DE10355760A1 - System und Verfahren zum Codieren von Daten - Google Patents

System und Verfahren zum Codieren von Daten Download PDF

Info

Publication number
DE10355760A1
DE10355760A1 DE10355760A DE10355760A DE10355760A1 DE 10355760 A1 DE10355760 A1 DE 10355760A1 DE 10355760 A DE10355760 A DE 10355760A DE 10355760 A DE10355760 A DE 10355760A DE 10355760 A1 DE10355760 A1 DE 10355760A1
Authority
DE
Germany
Prior art keywords
tree
bins
split
bin
data
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.)
Withdrawn
Application number
DE10355760A
Other languages
English (en)
Inventor
Somasekhar Brookefields Dhavala
Frederick Wilson Wheeler
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.)
General Electric Co
Original Assignee
General Electric Co
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 General Electric Co filed Critical General Electric Co
Publication of DE10355760A1 publication Critical patent/DE10355760A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

Ein Verfahren und System (18) zum Codieren einer universalen Position sind geschaffen, um nicht komprimierte Daten zu codieren. Datensymbole werden einem Bin-Abschnitt und einem Roh-Abschnitt zugeordnet, und eine Datenbaumstruktur wird verwendet. Ein von oben nach unten gerichteter Ansatz verwendet: Initialisieren eines Datenbaums, basierend auf der Bittiefe der Daten; basierend auf einer vorgegebenen Splitbedingung, Splitten eines Bins, um zwei gesonderte Bins zu bilden; und Wiederholen des Splitschritts, bis eine Endebedingung erreicht ist. Ein von unten nach oben gerichteter Ansatz verwendet: Erstellen eines Datenbaums; Fusionieren von zwei vorhandenen Bins, um basierend auf einer Fusionierungsbedingung ein neues Bin zu bilden; und Wiederholen des Fusionierungsschritts, bis eine Endebedingung erreicht ist.

Description

  • HINTERGRUND
  • Die Erfindung betrifft ganz allgemein ein Codieren von Daten und insbesondere ein System und Verfahren zum Codieren und Komprimieren von Daten.
  • Der Begriff Kompression bedeutet die Darstellung von Daten unter Verwendung einer möglichst geringen Anzahl von Bits. Ganz allgemein existieren zwei Arten der Kompression von Daten, nämlich mit Datenverlust behaftete und verlustfreie Kompression. Verlustlose Datenkompression ist dadurch gekennzeichnet, das die Daten nach dem Entkomprimieren vollständig ohne jeglichen Datenverlust wiedergewonnen werden können. Gewöhnlich ist in vielen Anwendungen eine verlustfreie Kompression erwünscht, insbesondere im Falle von medizinischen Bildern.
  • Medizinische Bilder weisen typischerweise einen hohen Dynamikbereich und große räumliche Ausdehnung auf. Der Entwurf eines Codiersystems ist aufwendiger, wenn der Dynamikbereich der zu codierenden Daten, wie es bei medizinischen Bildern der Fall ist, verhältnismäßig groß ist. In solchen Fällen besteht der Bedarf nach Codierungs- und Kompressionstechniken, die geringe Kosten des Rechnereinsatzes und ein gutes Kompressionsverhältnis aufweisen.
  • Dementsprechend wäre es erwünscht eine Codierungstechnik zu schaffen, die sich eignet, um mit einem geringen Rechenaufwand und hohen Kompressionsverhältnis große Mengen von Daten zu codieren.
  • KURZBESCHREIBUNG
  • Zusammenfassend wird gemäß dem bevorzugten Ausführungsbeispiel der vorliegenden Technik ein Universalpositionscodierungsverfahren zum Codieren nicht komprimierter Daten beschrieben. Das Verfahren umfasst ein Erzeugen einer gewünschten Binstruktur zum Codieren von Daten. Die gewünschte Binstruktur wird unter Verwendung zweier Ansätze erzeugt. In einem Ausführungsbeispiel umfasst ein von oben nach unten gerichteter Ansatz: ein Initialisieren eines Datenbaums basierend auf der Bittiefe der Daten; basierend auf einer vorgegebenen Splitbedingung, Splitten eines Bins, um zwei gesonderte Bins zu bilden; und Wiederholen des Splitschritts bis eine Endebedingung erreicht ist. In noch einem Ausführungsbeispiel umfasst ein von unten nach oben gerichteter Ansatz ein Erstellen eines Datenbaums; Fusionieren von zwei vorhandenen Bins, um basierend auf einer Fusionierungsbedingung ein neues Bin zu bilden; und Wiederholen des Fusionierungsschritts bis eine Endebedingung erreicht ist.
  • In einem anderen Aspekt der vorliegenden Erfindung ist ein Datencodiersystem zum Codieren von Daten geschaffen. Das Datencodiersystem umfasst ein Universalpositionscodierungssystem, das eine Datenbaumstruktur in einem von oben nach unten gerichteten oder in einem von unten nach oben gerichteten Ansatz verwendet. Das universelle Codiersystem stellt einen Vorprozessor für einen Entropiecodierer dar. Der Entropiecodierer nimmt die nicht komprimierten Daten und die gewünschte Binstruktur entgegen und kodiert die nicht komprimierten Daten unter Verwendung der gewünschten Binstruktur, um komprimierte Daten zu erzeugen.
  • ZEICHNUNGEN
  • Diese und sonstige Merkmale, Aspekte und Vorteile der vorliegenden Erfindung werden besser verstanden nach einem Lesen der nachfolgenden detaillierten Beschreibung in Verbindung mit den beigefügten Zeichnungen, in denen übereinstimmende Zeichen für übereinstimmende Teile in sämtlichen Zeichnungen stehen:
  • 1 zeigt ein Blockschaltbild eines Datencodiersystems das gemäß bevorzugten Ausführungsbeispielen der Erfindung verwirklicht ist;
  • 2 veranschaulicht in einem Flussdiagramm, wie die gewünschte Binstruktur gemäß einem Ausführungsbeispiel der Erfindung erzeugt wird;
  • 3, 4 und 5 veranschaulichen ein Beispiel, das das Flussdiagramm von 2 verwendet;
  • 6 veranschaulicht in einem Flussdiagramm, wie die gewünschte Binstruktur gemäß einem Ausführungsbeispiel der Erfindung erzeugt wird;
  • 7, 8, 9 und 10 veranschaulichen ein Beispiel, dass das Flussdiagramm von 6 verwendet;
  • 11 zeigt eine schematische Darstellung eines für allgemeine Zwecke verwendeten Rechnersystems, das gemäß bevorzugten Ausführungsbeispielen der Erfindung eingesetzt wird; und
  • 12 zeigt eine schematische Darstellung eines exemplarischen Bildgebungssystems, das ein bevorzugtes Ausführungsbeispiel der vorliegenden Erfindung verwendet.
  • AUSFÜHRLICHE BESCHREIBUNG
  • 1 zeigt ein Blockschaltbild eines Datencodiersystems 10, das gemäß bevorzugten Ausführungsbeispielen der Erfindung durchgeführt ist. Das Datencodiersystem 10 ist dargestellt mit einem mathematischen Operationsblock 12, einem Universalpositionscodierungssystem 18, einem Entropiecodierer 24, einem Entropiedecodierer 22 und einem mathematischen Operationsblock 20. Jeder Block wird weiter unten eingehender beschrieben.
  • Das Universalpositionscodierungssystem 18 nimmt nicht komprimierte Daten von dem Transformationsblock 12 entgegen und verarbeitet die nicht komprimierten Daten unter Verwendung einer anfänglichen Binstruktur, um eine gewünschte Binstruktur zu erzeugen. In dem veranschaulichten Ausführungsbeispiel umfasst das Universalpositionscodierungssystem einen Initialisierungsblock 14 und einen Verarbeitungsblock 16.
  • Der Entropiecodierer 24 ist an das Universalpositionscodierungssystem angeschlossen und nimmt die nicht komprimierten Daten und die gewünschte Binstruktur entgegen. Der Entropiecodierer kodiert die nicht komprimierten Daten unter Verwendung der gewünschten Binstruktur, um entsprechende komprimierte Daten zu erzeugen. Der Entropiecodierer erzeugt ferner eine Datendatei, die die komprimierten Daten und Daten enthält, die die gewünschte Binstruktur repräsentieren.
  • Der Entropiedecodierer 22 ist an den Entropiecodierer angeschlossen und nimmt die durch den Entropiecodierer erzeugte Datendatei entgegen. Es ist zu beachten, dass die von dem Entropiecodierer ausgegebenen Daten, und allgemeiner die Daten, die zwischen den hier beschriebenen vielfältigen funktionalen Komponenten ausgetauscht werden, in jeder geeigneten Weise formatiert sein können, beispielsweise in Form von herkömmlichen "Dateien" oder in jeder sonstigen Form, soweit diese sich für einen Zugriff und eine Verarbeitung nach der hier erläuterten Weise eignet. Der Entropiedecodierer decodiert die komprimierten Daten unter Verwendung der Daten, die die gewünschte Binstruktur repräsentieren, um entsprechende entkomprimierte Daten zu erzeugen.
  • Wie zu sehen, umfasst das Datencodiersystem 10 die mathematische Operation 12 und die inverse mathematische Operation 20. Die mathematische Operation 12 ist an den Entropiecodiererblock 24 gekoppelt und führt eine mathematische Operation an den nicht komprimierten Daten aus. Durch Ausführen geeigneter mathematischer Operationen an den nicht komprimierten Daten aktualisiert das Universalpositionscodierungssystem basierend auf vorgegebenen Regeln schrittweise die anfängliche Binstruktur und erzeugt eine gewünschte Binstruktur, die verwendet werden kann, um die nicht komprimierten Daten zu codieren. In einem Ausführungsbeispiel führt der mathematische Operationsblock eine optionale Elementarwellentransformationsoperation an den nicht komprimierten Daten durch.
  • Der Block 20 für inverse mathematische Operation ist an den Entropiedecodierer 22 angeschlossen und nimmt die entkomprimierten Daten entgegen, die durch den Entropiedecodierer erzeugt werden. Der Block für inverse mathematische Operation führt an den entkomprimierten Daten eine inverse mathematische Operation durch. In einem Ausführungsbeispiel wird an den entkomprimierten Daten eine inverse Elementarwellentransformationsoperation durchgeführt.
  • In einem Ausführungsbeispiel sind die nicht komprimierten Daten äquivalent zu den entkomprimierten Daten. Dementsprechend stellt das Datencodiersystem die nicht komprimierten Daten ohne Verlust wieder her; d. h. die Wiederherstellung ist verlustfrei. In einem Ausführungsbeispiel repräsentieren die nicht komprimierten Daten Bilder, beispielsweise 3D-Bilder, Videobilder, usw.
  • Indem nun mit Bezug auf das Universalpositionscodierungssystem in der Beschreibung fortgefahren wird, werden die nicht komprimierten Daten verarbeitet, um die gewünschte Binstruktur zu erzeugen. Die Art und Weise der Erzeugung der gewünschten Binstruktur wird im folgenden anhand von 2 und 3 beschrieben.
  • 2 veranschaulicht in einem Flussdiagramm, wie die gewünschte Binstruktur gemäß einem Ausführungsbeispiel der Erfindung erzeugt wird. Insbesondere veranschaulicht 2 einen von oben nach unten gerichteten Ansatz zum Universalpositionscodieren gemäß bevorzugten Ausführungsbeispielen der vorliegenden Erfindung. Das Verfahren beginnt in Schritt 30 und die Kontrolle fährt unmittelbar mit Schritt 32 fort. Jeder Schritt wird im folgenden näher erläutert.
  • In Schritt 32 wird eine oberste Baumbinstruktur initialisiert. Die oberste Baumbinstruktur umfasst mehrere oberste Baumbins. Jeder der obersten Baumbins umfasst mehrere oberste Baumsymbole. In einem Ausführungsbeispiel repräsentieren die obersten Baumsymbole nicht komprimierte Daten. In dem veranschaulichten Ausführungsbeispiel initialisiert der Initialisierungsblock 14 die oberste Baumbinstruktur. In einem Ausführungsbeispiel umfasst das oberste Baumbin die nachfolgenden Felder.
  • Bereich_Beginn repräsentiert das erste Symbol in dem Bin, Bereich_Ende repräsentiert das letzte Symbol in dem Bin und Bereich repräsentiert die Gesamtzahl der Symbole (lediglich die Größenordnung). Raw (Roh) repräsentiert die Bits, die erforderlich sind, um jedes Symbol in dem Bin eindeutig darzustellen. Count (Zähler) repräsentiert die Gesamtzahl des Vorkommens sämtlicher Symbole in einem Bin und Loss (Verlust) repräsentiert die Gesamtzahl der Bits, die erforderlich sind, um sämtlich Symbole in einem Bin darzustellen. Mathematisch dargestellt: Bereich = (Bereich_Ende – Bereich_Beginn + 1)Roh = log2 (Bereich),
  • Für mit Vorzeichen versehene Symbole (beispielsweise Symbole die +2 oder –2 darstellen) Roh = log2 (2·Bereich),undVerlust = Zähler·Roh
  • Im Allgemeinen sind die Symbole in einem Bin Integerzahlen und dementsprechend repräsentiert ein Bin Symbole die aneinandergrenzen.
  • Sonstige für das Aufbauen der gewünschten Binstruktur verwendete Parameter werden im folgenden beschrieben.
  • Falls Pi der i-te Bin ist und Pim das m-te Kind von Pi ist, ist die Bininformation für Bin Pi, Pi.bi vorgegeben durch
    Figure 00080001
  • In ähnlicher Weise wird das Bitbudget des i-ten Bins, Pi.bb, dargestellt als: Pi.bb = Pi.bi + Pi.lossund das gesamte Bitbudget ist gegeben durch:
    Figure 00080002
  • In Schritt 34 wird jedes einzelne der obersten Baumbins basierend auf einer Splitbedingung in mindestens zwei gesplittete oberste Baumbins gesplittet. In dem veranschaulichten Ausführungsbeispiel führt der Verarbeitungsblock 16 Schritte 34 durch. Die Splitbedingung kann auf vielfältigen Faktoren basieren.
  • In einem Ausführungsbeispiel entspricht die Splitbedingung dem Splitten eines obersten Baumbins der obersten Baumbinstruktur, die der minimalen Bininformation entspricht. Das oberste Baumbin, das der minimalen Bininformation entspricht, ist dargestellt als arg
    Figure 00090001
    Pi.bi + Pi..
  • Hier ist arg
    Figure 00090002
    Pi.bi das "i" Argument (der Index) der in Frage kommenden Quantität, für die die Quantität den minimalen Wert bei diesem Argument (Index) annimmt. In diesem Falle ist "i" die Binzahl die dem Bin entspricht, das im Vergleich zu sämtlichen übrigen Bins in der obersten Baumbinstruktur – S eine minimale Bininformation aufweist.
  • Alternativ wird die Splitbedingung ermittelt, indem zuerst jede der Vielzahl von obersten Baumbins in mehrere oberste Baumbinkinder pseudogesplittet wird, die Bininformation eines jeden einzelnen der obersten Baumbinkinder addiert wird, und daran anschließend das oberste Baumbin gesplittet wird, das mehrere oberste Baumbinkinder aufweist, die einer minimalen Erhöhung an Bininformation entsprechen. In dem veranschaulichten Ausführungsbeispiel ist das oberste Baumbin in zwei oberste Baumbinkinder gesplittet. Das Bin, das der minimalen Erhöhung an Bininformation nach dem Pseudosplitten entspricht, wird mittels des folgenden Ausdrucks berechnet:
    Figure 00090003
  • In noch einem Ausführungsbeispiel entspricht die Splitbedingung dem Splitten eines obersten Baumbins, das der maximalen Verringerung von Verlust entspricht. Das oberste Baumbin, das einer maximale Verringerung von Verlust entspricht, ergibt sich aus:
    Figure 00100001
  • Alternativ lässt sich die Splitbedingung ermitteln, indem jedes der obersten Baumbins in mehrere oberste Baumbinkinder pseudogesplittet wird, der Verlust eines jeden einzelnen der obersten Baumbinkinder addiert wird und daran anschließend die oberste Baumbins gesplittet werden, die die obersten Baumbinkinder aufweisen, die einer maximalen Verringerung von Verlust entsprechen. Das oberste Baumbin, das einer maximalen Verringerung von Verlust entspricht ergibt sich aus:
    Figure 00100002
  • In einem abgewandelten Ausführungsbeispiel entspricht die Splitbedingung dem Splitten von einem der obersten Baumbins, das dem maximalen Bitbudget entspricht. Das einem maximalen Bitbudget entsprechende oberste Baumbin wird repräsentiert durch:
    Figure 00100003
  • Alternativ lässt sich die Splitbedingung ermitteln, indem jedes der obersten Baumbins in eine Vielzahl von obersten Baumbinkindern pseudogesplittet wird, und daran anschließend eines der obersten Baumbins gesplittet wird, das dasjenige der obersten Baumbinkinder aufweist, das einer maximalen Verringerung des Bitbudgets entspricht. Das einer maximalen Verringerung des Bitbudgets entsprechende oberste Baumbin ergibt sich aus:
    Figure 00110001
  • Es existieren vielfältige Austauschmöglichkeiten für das Wählen jedes Kriteriums zum Splitten. Das Kriterium kann in Operationen kategorisiert werden, die auf die Bins unmittelbar und/oder auf die Bins, nachdem diese pseudegesplittet wurden, zutreffen. Beispielsweise, benötigen die vorherigen Kriterien, die unmittelbar auf die Bins zutreffen, keinen hohen Rechenaufwand und lassen sich durchführen, indem eine Tabelle sortiert wird, die die Daten jedes Bins enthält. Im Falle der Kriterien der zuletzt genannten Art sind zusätzliche Rechengänge erforderlich, jedoch führt dies zu besseren Ergebnissen. Darüber hinaus können die Kriterien basierend auf Bininformation, Verlust und Bitbudget klassifiziert werden. Für das auf Bininformation basierende Kriterium, wird die Entropie der Bins in Betracht gezogen. Der Entropiecodierer bestimmt das Kriterium. Das Kriterium ist vorteilhaft, wenn der Verlust unbedeutend ist und wird gewöhnlich bei mit Verlust behafteter Kompressionsvorgabe verwendet. Allerdings erfordert die Berechnung der Bininformation verhältnismäßig komplexe Operationen wie die Berechnung der Logarithmen. Die auf dem Verlust basierenden Kriterien sind weniger komplex, da sie sich durch einfache Multiplikationen und ein Aktualisieren geeigneter Felder der Binstrukturen durchführen lassen. Andererseits sind die auf dem Bitbudget basierenden Kriterien rechnerisch komplex.
  • Zuletzt wird abhängig von der Komplexität der Berechnung des Algorithmus, dem gewünschten Kompressionsverhältnis und dem Entropiecodierer ein geeignetes Kriterium ausgewählt.
  • In dem veranschaulichten Beispiel enthält das erste oberste Baumbin sowohl für mit Vorzeichen versehene als auch für nicht mit Vorzeichen versehene Daten immer das oberste Baumsymbol '0'. Ein oberstes Baumbin, das eine Roh gleich Null aufweist kann nicht gesplittet werden und ein Splitten eines obersten Baumbin ergibt zwei neu gesplittete oberste Baumbins mit einer gleichen Anzahl von Symbole darin (dies ergibt sich aus der gewählten Anfangsstruktur der obersten Baumbins) und die Anzahl der Symbole in den oberste Baumbins stellt eine Potenz von Zwei dar.
  • Die Prozedur des Splittens der obersten Baumbins wird fortgesetzt bis, wie in Schritt 36 gezeigt, eine Endebedingung erreicht ist. Die Endebedingung kann mittels der folgenden Maßnahmen ermittelt werden.
  • In einem Ausführungsbeispiel basiert die ermittelte Endebedingung auf der Vielzahl von obersten Baumbins. Die Endebedingung kann auch basierend auf einem Betrag einer Verzerrung ermittelt werden, wobei die Verzerrung ein Faktor der Vielzahl von obersten Baumsymbolen ist. Die Endebedingung kann ferner basierend auf einem Kompressionsverhältnis ermittelt werden. Alternativ lässt sich die Endebedingung basierend auf den oberste Baumbins und dem Kompres sionsverhältnis ermitteln.
  • In Schritt 38 wird die gewünschte Binstruktur mittels der Anfangsstruktur der obersten Baumbins und einem Splitten der obersten Baumbins, wie es oben beschrieben ist, erzeugt. In einem bevorzugten Ausführungsbeispiel umfasst die gewünschte Binstruktur die obersten Baumbins, die nicht gesplittet wurden und die gesplitteten obersten Baumbins, die nicht weiter gesplittet wurden.
  • Ein Beispiel, das die Weise veranschaulicht, in der die Schritte von 2 durchgeführt werden, ist im folgenden beschrieben. Eine 4-Bit-Dateneinheit (d.h., die Bittiefe ist gleich vier) wird durch die Folge '2 2 3 4 7 0 0 1 0 2 2 3 7' wiedergegeben. Die 4-Bit-Dateneinheit wird, wie in 3 gezeigt, in vier Bins 54, 56, 58 und 60 dargestellt. Das Bin 54 enthält ein oberstes Baumsymbol 0, das Bin 56 enthält ein oberstes Baumsymbol 1, das Bin 58 enthält ein oberstes Baumsymbol 23, das Bin 60 enthält ein oberstes Baumsymbol 47. Die Felder in jedem Bin sind im folgenden angegeben.
  • Für das Bin 54 ist Bereich_Beginn gleich 0, Bereich_Ende gleich 0, Bereich gleich 1, Roh gleich 0, Zähler gleich 3 und Verlust gleich 0. In ähnlicher Weise ist für das Bin 56 Bereich_Beginn gleich 1, Bereich_Ende gleich 1, Bereich gleich 1, Roh gleich 0 und Zähler gleich 1 und Verlust gleich 0. Für das Bin 58 ist Bereich_Beginn gleich 2, Bereich_Ende gleich 3, Bereich gleich 2, Roh gleich 2 und Zähler gleich 6 und Verlust gleich 6. Für das Bin 60 ist Bereich_Beginn gleich 4, Bereich_Ende gleich 7, Bereich gleich 4, Roh gleich 2 und Zähler gleich 3 und Verlust gleich 6. Es ist ersichtlich, dass in diesem Beispiel die Gesamtzahl von Bins gleich der Bittiefe plus 1 ist.
  • 3 repräsentiert die Anfangsstruktur 50 von obersten Baumbins. Die Struktur von obersten Baumbins umfasst die vier obersten Baumbins 54, 56, 58 und 60, die sämtliche an einem Knoten 52 beginnen. Somit wird das oberste Baumbin 58 in gesplittete oberste Baumbins 62 und 64 gesplittet, die sich an einem Knoten 66 treffen, wie in 4 gezeigt. Basierend auf der Splitbedingung wird das gesplittete oberste Baumbin 64 weiter in gesplittete oberste Baumbins 68 und 70 aufgeteilt, wie in 5 gezeigt. Folglich umfasst die gewünschte erzeugte Binstruktur die obersten Baumbins 54, 56, 60 und die gesplitteten obersten Baumbins 64, 68 bzw. 70.
  • In einem alternativen Ausführungsbeispiel wird ein von unten nach oben gerichteter Ansatz zur Universalpositionscodierung verwendet. Der alternative Ansatz wird im folgenden anhand 610 beschrieben.
  • 6 veranschaulicht in einem Flussdiagramm die Weise, in der die gewünschte Binstruktur mittels des von unten nach oben gerichteten Ansatzes erzeugt wird. Das Verfahren beginnt in Schritt 80 und die Kontrolle fährt unmittelbar mit Schritt 82 fort. Jeder Schritt wird im folgenden näher erläutert.
  • In Schritt 82 wird eine Anfangsstruktur von untersten Baumbins initialisiert. Die unterste Baumbinstruktur umfasst eine Vielzahl von untersten Baumbins. Jedes der untersten Baumbins umfasst einige unterste Baumsymbole. In einem Ausführungsbeispiel repräsentieren die untersten Baumsymbole nicht komprimierte Daten. In dem veranschau lichten Ausführungsbeispiel initialisiert der Initialisierungsblock 14 die untersten Baumbinstruktur. In einem Ausführungsbeispiel umfassen die untersten Baumbins das gleiche Feld, wie es mit Bezug auf die oberste Baumbins beschrieben wurde.
  • In Schritt 84 werden je zwei der untersten Baumbins basierend auf einer Fusionierungsbedingung zu mindestens einem fusionierten untersten Baumbin fusioniert. In dem veranschaulichten Ausführungsbeispiel führt der Verarbeitungsblock 16 Schritte 84 durch. Die Fusionierungsbedingung kann auf vielfältigen Faktoren begründet werden. Die vielfältigen Fusionierungsbedingungen werden im folgenden beschrieben. Zu beachten ist, dass Pi : 1+n das Bin ist, das entsteht, indem mit "i" beginnend "n" aufeinanderfolgende Bins fusioniert werden. Im Allgemeinen ist hier "n" gleich zwei gewählt.
  • In einem Ausführungsbeispiel entspricht die Fusionierungsbedingung dem Fusionieren von zwei der untersten Baumbins, die der maximalen Verringerung an Bininformation entspricht. Das unterste Baumbin, das der maximalen Verringerung an Bininformation entspricht ergibt sich aus:
    Figure 00150001
  • In noch einem Ausführungsbeispiel entspricht die Fusionierungsbedingung dem Fusionieren von zwei untersten Baumbins, die einer minimalen Erhöhung an Verlust entsprechen. Das unterste Baumbin, das einer minimalen Erhöhung an Verlust entspricht, wird dargestellt durch:
    Figure 00160001
  • In einem weiteren Ausführungsbeispiel entspricht die Fusionierungsbedingung dem Fusionieren von zwei untersten Baumbins, die der minimalen Erhöhung des Bitbudgets entspricht. Das unterste Baumbin, das einer minimalen Erhöhung des Bitbudgets entspricht, ergibt sich aus:
    Figure 00160002
  • In einem veränderten Ausführungsbeispiel entspricht die Fusionierungsbedingung dem Fusionieren von zwei der untersten Baumbins, die einer minimalen Bininformation entspricht. Das unterste Baumbin, das der minimalen Bininformation entspricht ergibt sich aus:
    Figure 00160003
  • In noch einem Ausführungsbeispiel entspricht die Fusionierungsbedingung dem Fusionieren von zwei untersten Baumbins, die einem minimalen Verlust entsprechen. Das unterste Baumbin, das dem minimalen Verlust entspricht, ergibt sich aus:
    Figure 00160004
  • In einem weiteren Ausführungsbeispiel entspricht die Fusionierungsbedingung dem Fusionieren von zwei untersten Baumbins, die einem minimalen Bitbudget entspricht. Das unterste Baumbin, das dem minimalen Bitbudget entspricht ergibt sich aus:
    Figure 00170001
  • Das Verfahren des Fusionierens der untersten Baumbins wird fortgesetzt bis eine Endebedingung erreicht ist, wie in Schritt 86 gezeigt. Die Endebedingung kann auf den nachstehend beschriebenen Wegen ermittelt werden.
  • In einem Ausführungsbeispiel wird die Endebedingung basierend auf einer Anzahl von untersten Baumbins ermittelt. In noch einem Ausführungsbeispiel wird die Endebedingung basierend auf einem Betrag einer Verzerrung ermittelt, wobei die Verzerrung ein Faktor der Anzahl von untersten Baumsymbolen ist. In einem weiteren Ausführungsbeispiel wird die Endebedingung basierend auf der Anzahl von untersten Baumbins und dem Kompressionsverhältnis ermittelt.
  • In Schritt 88 wird die gewünschte Binstruktur mittels der untersten Baumbins und der fusionierten untersten Baumbins erzeugt. In einem Ausführungsbeispiel umfasst die gewünschte Binstruktur die untersten Baumbins, die nicht fusioniert wurden, und die fusionierten untersten Baumbins, die nicht weiter fusioniert wurden.
  • Ein Beispiel, das die Weise veranschaulicht, in der die Schritte von 6 durchgeführt werden, ist im folgenden beschrieben. Die nicht komprimierten Daten stellen in diesem Beispiel eine 4-Bit-Dateneinheit dar. Die 4-Dateneinheit wird in Form von sechzehn untersten Baumbins 110124 dargestellt, wie in 7 gezeigt. Das Bin 110 enthält ein unterstes Baumsymbol 3, das Bin 111 enthält ein oberstes Baumsymbol 0, das Bin 112 enthält ein oberstes Baumsymbol –1, das Bin 113 enthält ein oberstes Baumsymbol 1, und so fort. Die Felder in jedem Bin werden nachstehend angegeben.
  • 7 repräsentiert dementsprechend die Anfangsstruktur 92 von untersten Baumbins. Die unterste Baumstruktur umfasst fünfzehn unterste Baumbins 110124. Dementsprechend werden die untersten Baumbins 123 und 124 zu einem fusionierten untersten Baumbin 125 fusioniert, wie in 8 gezeigt. Basierend auf der Splitbedingung werden das unterste Baumbin 121 und 122 zu einem fusionierten untersten Baumbin 126 fusioniert, wie in 9 gezeigt. Die fusionierten untersten Baumbins 125 und 126 werden weiter fusioniert, um ein fusioniertes unterstes Baumbin 127 zu bilden, wie in 10 gezeigt. Auf diese Weise ist die gewünschte Binstruktur erzeugt und umfasst die untersten Baumbins 110120 und 127. In den obigen Ausführungsbeispielen ist die Erzeugung der gewünschten Binstruktur beschrieben, wobei entweder eine oberste Baumbinstruktur oder eine unterste Baumbinstruktur verwendet wurde. Für den Fachmann ist offensichtlich, dass die gewünschte Binstruktur alternativ mittels einer Kombination des oberste Baumbinstrukturverfahrens und des unterste Baumbinstrukturverfahrens erzeugt werden kann.
  • Die obigen Verfahren zum Erzeugen der gewünschten Binstruktur können mittels eines Rechnersystems durchgeführt werden. Die Weise, in der die gewünschte Binstruktur mit tels eines Rechnersystems erzeugt wird, ist im folgenden näher beschrieben.
  • 11 zeigt eine schematische Darstellung eines für allgemeine Zwecke zu verwendenden Rechnersystems 130, das dafür eingesetzt werden kann, um die gewünschte Binstruktur zum Codieren von Daten, wie in dem obigen Verfahren beschrieben, zu erzeugen. Das Rechnersystem 130 umfasst im Wesentlichen mindestens einen Prozessor 132, einen Arbeitsspeicher 134, Eingabe-/Ausgabegeräte 136 und Datenleitungen (beispielsweise Busse) 146, die den Prozessor, den Arbeitsspeicher und die Eingabe-/Ausgabegeräte miteinander verbinden. Der Prozessor 132 nimmt Befehle und Daten von dem Arbeitsspeicher 134 entgegen und führt vielfältige Operationen aus, beispielsweise eine Universalpositionscodierung. Der Prozessor 132 umfasst ein Rechenwerk (ALU) das arithmetische und logische Operationen durchführt und eine Steuereinheit, die Anweisungen aus dem Arbeitsspeicher 134 abruft und decodiert und diese ausführt, wobei sie erforderlichenfalls auf die ALU zurückgreift. Der Arbeitsspeicher 134 umfasst im Wesentlichen einen Direktzugriffsspeicher (RAM) und einen Festwertspeicher (ROM); allerdings können andere Arten von Arbeitsspeichern wie beispielsweise programmierbare Lesespeicher (PROM), löschbare programmierbare Lesespeicher (EPROM) und elektrisch löschbare programmierbare Lesespeicher (EEPROM) verwendet werden. Ferner enthält der Arbeitsspeicher 134 vorzugsweise ein Betriebssystem, das auf dem Prozessor 132 läuft. Das Betriebssystem führt grundlegende Aufgaben durch, darunter Erfassen von Eingaben, Übertragen von Ausgangssignalen an Ausgabegeräte, Protokollieren von Dateien und Verzeichnissen und Steuern vielfältiger Peripheriegeräte.
  • Die Eingabe-/Ausgabegeräte können eine Tastatur 138 und eine Maus 137 umfassen, die es einem Benutzer ermöglichen, Daten und Befehle in das Rechnersystem 130 einzugeben. Ferner kann ein Display 140 verwendet werden, um einem Benutzer zu ermöglichen, das Ergebnis der Rechnervorgänge zu beobachten. Weitere Ausgabegeräte können einen Drucker, Plotter, Frequenzgenerator sowie Lautsprecher beinhalten. Eine Kommunikationsvorrichtung 142, beispielsweise ein Telefon- oder Kabelmodem oder eine Netzwerkkarte, z.B. ein Ethernet-Adapter, ein Adapter für ein lokales Netzwerk (LAN), ein Adapter für ein integriertes Dienstleistungsdatennetz (ISDN) oder ein Adapter für einen digitalen Teilnehmeranschluss (DSL), der es dem Rechnersystem 130 ermöglicht, auf andere Rechner und Ressourcen in einem Netzwerk, beispielsweise einem LAN- oder einem Großraumnetzwerk (WAN) zuzugreifen.
  • Ein Massenspeichergerät 144 kann dafür eingesetzt werden, um dem Rechnersystem 130 zu ermöglichen große Mengen von Daten dauerhaft abzuspeichern. Das Massenspeichergerät kann beliebige Arten von Plattenlaufwerken beinhalten, beispielsweise Disketten-, Festplatten- und optische Platten-, sowie Bandlaufwerke, die in der Lage sind, Daten auf einem Band aufzuzeichnen und von diesem zu lesen, z.B. Digitale Audiobänder (DAT), Digitale Lineare Bänder (DLT) oder sonstige magnetisch codierte Medien. Das oben beschriebene Rechnersystem 130 kann in Form eines "handheld" Digitalrechners, Personal-Digital-Assistant-Rechners (PDA), Notebookrechners, Personalcomputers, Workstations, Minicomputers, Großrechners oder Supercomputers vorliegen.
  • Wie oben beschrieben, kann das Verfahren zum Codieren von Daten auf medizinische Bilder angewandt werden. 12 zeigt einen allgemeinen Überblick über exemplarische Bildgebungssysteme, auf die eine Universalpositionscodierung gemäß bevorzugten Ausführungsbeispielen der vorliegenden Erfindung angewandt werden kann. Ein Bildgebungssystem 150 umfasst im Wesentlichen eine Bauart eines Bildwandlers 152, der Bilddaten oder Signale erfasst und die Signale in verwendbare Daten umwandelt. Wie weiter unten eingehender beschrieben, kann der Bildwandler 152 nach vielfältigen physikalische Prinzipien arbeiten, um die Bilddaten zu erzeugen. Im Allgemeinen werden die Bilddaten, die für interessierende Bereiche im Körper eines Patienten aussagekräftig sind, durch den Bildwandler allerdings entweder auf einem herkömmlichen Träger, beispielsweise einem fotografischen Film, oder auf einem digitalen Medium erzeugt.
  • Der Bildwandler arbeitet unter der Steuerung eines Systemsteuerungsschaltkreises 154. Der Systemsteuerungsschaltkreis kann einen weiten Bereich von Schaltkreisen umfassen, beispielsweise Strahlungsquellensteuerschaltkreise, Zeitsteuerschaltkreise, Schaltkreise zum Koordinieren einer Datenerfassung in Verbindung mit Bewegungen eines Patienten oder eines Tisches, Schaltkreise zum Steuern der Position der Bestrahlung oder sonstige Quellen und von Sensoren, und so fort.
  • Der Bildwandler 152 kann nach einem Erfassen der Bilddaten oder Signale die Signale verarbeiten, um sie beispielsweise in digitale Werte umzuwandeln, und er leitet die Daten weiter an einen Datenerfassungsschaltkreis 156. Im Falle von analogen Medien, beispielsweise einem fotografischen Film, kann der Datenerfassungsschaltkreis im Wesentlichen Träger für den Film enthalten, sowie eine Aus rüstung zum Entwickeln des Films und zum erzeugen von Ausdrucken. Für digitale Systeme kann der Datenerfassungsschaltkreis 156 vielfältige anfängliche Verarbeitungsaufgaben durchführen, beispielsweise Anpassen von digitalen Dynamikbereichen, Glätten oder Schärfen von Daten, sowie Kompilieren von Datenströmen und Dateien, wo es gewünscht wird.
  • Die Daten werden anschließend an einen Datenverarbeitungsschaltkreis 158 ausgegeben, wo weitere Verarbeitungen und Analysen erfolgen. Für herkömmliche Medien, z.B. im Falle eines fotografischen Films, kann der Datenverarbeitungsschaltkreis den Filmen Textdaten hinzufügen sowie spezielle Anmerkungen oder Patientenidentifizierungsdaten anhängen. Der Datenverarbeitungsschaltkreis führt für die vielfältigen erhältlichen digitalen Bildgebungssysteme bedeutende Analysen der Daten, Klassierung der Daten, Schärfen, Glätten, Merkmalerfassung, etc. durch.
  • Zuletzt werden die Bilddaten zur Betrachtung und Analyse einer Anwenderschnittstelle 160 beliebiger Bauart zugeführt. Während Operationen an den Bilddaten vor einer Betrachtung ausgeführt werden können, ist die Anwenderschnittstelle 160 an manchmal nützlich, um wiederhergestellte Bilder zu betrachten, die auf den gesammelten Bilddaten basieren. Es ist zu beachten, dass Bilder im Falle eines fotografischen Films gewöhnlich an Lichttafeln oder ähnlichen Wiedergabevorrichtungen angebracht werden, um Röntgenologen und konsultierenden Ärzten ein Lesen und Kommentieren der Bildfolgen zu erleichtern. Die Bilder können ferner vorübergehend oder langfristig in Speichergeräten gespeichert werden, die für die vorliegenden Zwecke im Allgemeinen als in dem Interface 160 enthalten erachtet werden, beispielsweise Bildarchivierungskommunikationssysteme. Die Bilddaten können auch, z.B. über ein Netzwerk, an entfernt liegende Orte übermittelt werden.
  • Ferner ist zu beachten, dass die Anwenderschnittstelle 160 von einem allgemeinen Standpunkt aus betrachtet gewöhnlich über eine Schnittstelle mit dem Systemsteuerungsschaltkreis 154 eine Steuerung des Bildgebungssystems ermöglicht. Weiter sollte beachtet werden, dass mehr als nur eine Anwenderschnittstelle 160 vorgesehen sein kann. Dementsprechend kann ein Bildgebungsscanner oder eine Bildgebungsstation eine Schnittstelle aufweisen, die ein Einstellen von Parametern erlaubt, die in dem Vorgang der Bilddatenerfassung verwendet werden, während eine andere Anwenderschnittstelle zum Manipulieren, Verfeinern und Betrachten der sich ergebenden wiederhergestellten Bilder vorgesehen sein kann.
  • Die zuvor beschriebenen Ausführungsbeispiele der vorliegenden Erfindung weisen viele Vorteile auf, darunter das Erzielen eines Ausgleichs zwischen dem Kompressionsverhältnis und der Komplexität des Entwurfsalgorithmus. Mit anderen Worten, es ist vorteilhafterweise ein weniger komplizierter Algorithmus vorgesehen, um große Mengen von Daten zu Codieren, während ein hohes Kompressionsverhältnis beibehalten wird.
  • Während hierin lediglich spezielle Merkmale der Erfindung veranschaulicht und beschrieben wurden, erschließen sich dem Fachmann viele Abwandlungen und Veränderungen. Es ist daher selbstverständlich, dass die beigefügten Patentansprüche sämtliche Abwandlungen und Veränderungen abdecken sollen, die in den wahren Schutzbereich der Erfindung fallen.
  • 10
    Datencodiersystem
    12
    Mathematischer Operationsblock
    14
    Initialisierungsblock
    16
    Verarbeitungsblock
    18
    Universalpositionscodierungsblock
    24
    Entropiecodierer
    22
    Entropiedecodierer
    20
    Block für inverse mathematische Operation
    50
    Anfangsstruktur von obersten Baumbins
    54, 56, 58, 60, 62, 64, 68, 70
    Oberste Baumbins
    92
    Anfangsstruktur von untersten Baumbins
    110–124
    Unterste Baumbins
    130
    Rechnersystem
    132
    Prozessor
    134
    Arbeitsspeicher
    136
    Eingabegeräte
    137
    Maus
    138
    Tastatur
    140
    Display
    142
    Kommunikationsvorrichtung
    144
    Massenspeichergerät
    146
    Datenpfad
    150
    Bildgebungssystem
    152
    Bildwandler
    154
    Steuerschaltkreis
    156
    Datenerfassungsschaltkreis
    158
    Datenverarbeitungsschaltkreis
    160
    Anwenderschnittstelle

Claims (26)

  1. Verfahren zum Codieren von Daten, wobei zu dem Verfahren die Schritte gehören: Initialisieren einer obersten Baumbinstruktur basierend auf der Bittiefe der Daten, wobei die oberste Baumbinstruktur eine Vielzahl von obersten Baumbins umfasst, wobei jedes der obersten Baumbins eine Vielzahl von obersten Baumsymbolen enthält; basierend auf einer Splitbedingung, Splitten eines jeden der obersten Baumbins in zwei gesplittete oberste Baumbins; Wiederholen des Splitschritts bis eine Endebedingung erreicht ist; und Erzeugen der gewünschten Binstruktur unter Verwendung der Vielzahl von obersten Baumbins und der Vielzahl gesplitteter oberster Baumbins.
  2. Verfahren nach Anspruch 1, bei dem ein oberster Baumbin mit Roh gleich Null nicht gesplittet wird.
  3. Verfahren nach Anspruch 1, bei dem jedes einzelne der Vielzahl von obersten Baumsymbolen die nicht komprimierten Daten repräsentiert.
  4. Verfahren nach Anspruch 1, bei dem die Splitbedingung basierend auf einem Pseudosplitten eines jeden der Vielzahl von obersten Baumbins in eine Vielzahl von obersten Baumbinkindern ermittelt wird, wobei der Splitschritt umfasst: Addieren der Bininformation eines jeden einzelnen der Vielzahl von obersten Baumbinkindern, Splitten eines der obersten Baumbins, das die Vielzahl von obersten Baumbinkindern umfasst, die einer minimalen Erhöhung an Bininformation entsprechen.
  5. Verfahren nach Anspruch 1, bei dem die Splitbedingung basierend auf maximalem Verlust ermittelt wird.
  6. Verfahren nach Anspruch 1, bei dem die Splitbedingung basierend auf einem Pseudosplitten eines jeden der Vielzahl von obersten Baumbins in eine Vielzahl von obersten Baumbinkindern ermittelt wird, wobei der Splitschritt umfasst: Addieren des Verlust eines jeden einzelnen der Vielzahl von obersten Baumbinkindern, Splitten eines der obersten Baumbins, das die Vielzahl von obersten Baumbinkindern umfasst, die einer maximalen Verringerung von Verlust entsprechen.
  7. Verfahren nach Anspruch 1, bei dem die Splitbedingung basierend auf einem maximalen Bitbudget ermittelt wird.
  8. Verfahren nach Anspruch 1, bei dem der Splitschritt umfasst Pseudosplitten jedes der Vielzahl von obersten Baumbins in eine Vielzahl von obersten Baumbinkindern, Splitten eines der obersten Baumbins, das eines der Vielzahl von obersten Baumbinkindern umfasst, die einer minimalen Erhöhung des Bitbudgets entsprechen.
  9. Verfahren nach Anspruch 1, bei dem eine mathematische Operation eine Elementarwellentransformationsoperation ist und eine inverse mathematische Operation eine inverse Elementarwellentransformationsoperation ist.
  10. Verfahren zum Codieren nicht komprimierter Daten, bei dem die Daten eine vorgegebene Bittiefe aufweisen, wobei zu dem Verfahren die Schritte gehören: Initialisieren einer untersten Baumbinstruktur, wobei die unterste Baumbinstruktur eine Vielzahl von untersten Baumbins aufweist, wobei jedes der untersten Baumbins eine Vielzahl von untersten Baumsymbole umfasst; basierend auf einer Fusionierungsbedingung, Fusionieren von mindestens zwei der Vielzahl von untersten Baumbins, um eine Vielzahl von fusionierten untersten Baumbins zu erzeugen; Wiederholen des Fusionierungsschritts bis eine Endebedingung erreicht ist; und Erzeugen der gewünschten Binstruktur unter Verwendung der Vielzahl von untersten Baumbins und der Vielzahl fusionierter unterster Baumbins.
  11. Verfahren nach Anspruch 10, bei dem die Fusionierungs bedingung basierend auf einem Fusionieren von zwei der Vielzahl von Bins ermittelt wird, die dem minimalen Verlust entspricht.
  12. Verfahren nach Anspruch 10, bei dem die Fusionierungsbedingung basierend auf einem Fusionieren von zwei der Vielzahl von Bins ermittelt wird, die dem minimalen Bitbudget entspricht.
  13. Verfahren nach Anspruch 10, bei dem jedes einzelne der Vielzahl von untersten Baumsymbolen die nicht komprimierten Daten repräsentiert.
  14. Verfahren nach Anspruch 10, ferner umfassend: Durchführen einer mathematischen Operation an den nicht komprimierten Daten; und Durchführen einer inversen mathematischen Operation an den entkomprimierten Daten.
  15. Verfahren nach Anspruch 10, bei dem eine mathematische Operation eine Elementarwellentransformationsoperation ist und die inverse mathematische Operation eine inverse Elementarwellentransformationsoperation ist.
  16. Verfahren nach Anspruch 10, bei dem die nicht komprimierten Daten ein Bild repräsentieren.
  17. Datencodiersystem (10) mit einem Universalpositionscodierungssystem (18) zum Erzeugen einer gewünschten Binstruktur, wobei zu dem Universalpositionscodierungsblock gehört: ein Initialisierungsblock (14), wobei der Initialisierungsblock konfiguriert ist, um eine Baumbinstruktur zu initialisieren; und ein Verarbeitungsblock (16), der an den Initialisierungsblock gekoppelt ist, wobei der Verarbeitungsblock konfiguriert ist, um die Baumbinstruktur und die nicht komprimierten Daten zu verarbeiten, um die gewünschte Binstruktur zu erzeugen.
  18. Datencodiersystem nach Anspruch 17, bei dem: der Initialisierungsblock eine oberste Baumbinstruktur (50) initialisiert, wobei die oberste Baumbinstruktur eine Vielzahl von obersten Baumbins umfasst; wobei jedes der obersten Baumbins eine Vielzahl von obersten Baumsymbolen umfasst; der Verarbeitungsblock jedes einzelnen der Vielzahl von obersten Baumbins basierend auf einer Splitbedingung splittet, um eine Vielzahl von gesplitteten obersten Baumbins zu erzeugen; und der Verarbeitungsblock ferner die Vielzahl von obersten Baumbins solange splittet, bis eine Endebedingung erreicht ist; und der Verarbeitungsblock die gewünscht Binstruktur unter Verwendung der Vielzahl von obersten Baumbins und der Vielzahl der gesplitteten obersten Baumbins erzeugt.
  19. Von einem Rechner auslesbares Medium, das Programmanweisungen speichert, die dazu dienen, ein Rechner system zu veranlassen, nicht komprimierte Daten zu codieren, wobei zu den Programmanweisungen gehören: Initialisieren einer Baumbinstruktur; und Verarbeiten der Baumbinstruktur und der nicht komprimierten Daten, um die gewünschte Binstruktur zu erzeugen.
  20. Von einem Rechner auslesbares Medium nach Anspruch 19, umfassend: Initialisieren einer obersten Baumbinstruktur, wobei die oberste Baumbinstruktur eine Vielzahl von obersten Baumbins umfasst; wobei jedes der obersten Baumbins eine Vielzahl von obersten Baumsymbolen umfasst; basierend auf einer Splitbedingung, Splitten jedes einzelnen der Vielzahl von obersten Baumbins, um eine Vielzahl von gesplitteten obersten Baumbins zu erzeugen; weiteres Splitten der Vielzahl von obersten Baumbins, bis eine Endebedingung erreicht ist; und Erzeugen der gewünschten Binstruktur unter Verwendung der Vielzahl von obersten Baumbins und der Vielzahl von gesplitteten obersten Baumbins.
  21. Verfahren zum Erzeugen einer gewünschten Binstruktur, um ein nicht komprimiertes Datenmaterial zu codieren, wobei zu dem Verfahren die Schritte gehören: Initialisieren einer Baumbinstruktur; und Verarbeiten der Baumbinstruktur und der nicht komprimierten Daten, um die gewünschte Binstruktur zu erzeugen.
  22. Verfahren nach Anspruch 21, ferner die Schritte umfassend: Initialisieren einer obersten Baumbinstruktur basierend auf der Bittiefe der Daten, wobei die oberste Baumbinstruktur eine Vielzahl von obersten Baumbins umfasst, wobei jedes der obersten Baumbins eine Vielzahl von obersten Baumsymbolen umfasst; basierend auf einer Splitbedingung, Splitten eines jeden der obersten Baumbins in zwei gesplittete oberste Baumbins; Wiederholen des Splitschritts bis eine Endebedingung erreicht ist; und Erzeugen der gewünschten Binstruktur unter Verwendung der Vielzahl von obersten Baumbins und der Vielzahl gesplitteter oberster Baumbins.
  23. System zum Codieren nicht komprimierter Daten, wobei zu dem System gehören: Mittel zum Initialisieren einer Baumbinstruktur; und Mittel, zum Verarbeiten der Baumbinstruktur und der nicht komprimierten Daten, um die gewünschte Binstruktur zu erzeugen.
  24. System nach Anspruch 23, bei dem die Mittel zum Initialisieren umfassen: Mittel zum Initialisieren einer obersten Baumbinstruktur, wobei die oberste Baumbinstruktur eine Vielzahl von obersten Baumbins umfasst; wobei jedes der obersten Baumbins eine Vielzahl von obersten Baumsymbolen umfasst; und wobei das Mittel zum Verarbeiten umfasst: Mittel, um jedes einzelne der Vielzahl von obersten Baumbins basierend auf einer Splitbedingung zu splitten, um eine Vielzahl von gesplitteten obersten Baumbins zu erzeugen; Mittel, um die Vielzahl von obersten Baumbins weiter zu splitten, bis eine Endebedingung erreicht ist; und Mittel, um die gewünschte Binstruktur unter Verwendung der Vielzahl von obersten Baumbins und der Vielzahl der gesplitteten obersten Baumbins zu erzeugen.
  25. System nach Anspruch 23, bei dem das Mittel zum Initialisieren umfasst: Mittel zum Initialisieren einer untersten Baumbinstruktur, wobei die unterste Baumbinstruktur eine Vielzahl von untersten Baumbins umfasst; wobei jedes der untersten Baumbins eine Vielzahl von untersten Baumsymbolen umfasst; und wobei die Mittel zum Verarbeiten Mittel umfasst, um basierend auf einer Fusionierungsbedingung mindestens zwei der Vielzahl von untersten Baumbins zu fusionieren, um eine Vielzahl von fusionierten untersten Baumbins zu erzeugen; Mittel, um die Vielzahl von untersten Baumbins weiter zu fusionieren, bis eine Endebedingung erreicht ist; und Mittel, um die gewünschte Binstruktur unter Verwendung der Vielzahl von untersten Baumbins und der Vielzahl der fusionierten untersten Baumbins zum erzeugen.
  26. System nach Anspruch 24, bei dem jedes der Vielzahl von obersten Baumsymbolen die nicht komprimierten Daten repräsentiert.
DE10355760A 2002-11-27 2003-11-26 System und Verfahren zum Codieren von Daten Withdrawn DE10355760A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/306441 2002-11-27
US10/306,441 US7123774B2 (en) 2002-11-27 2002-11-27 System and method for coding data

Publications (1)

Publication Number Publication Date
DE10355760A1 true DE10355760A1 (de) 2004-06-09

Family

ID=30000293

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10355760A Withdrawn DE10355760A1 (de) 2002-11-27 2003-11-26 System und Verfahren zum Codieren von Daten

Country Status (5)

Country Link
US (1) US7123774B2 (de)
JP (1) JP2004177965A (de)
CN (1) CN1545211A (de)
DE (1) DE10355760A1 (de)
GB (1) GB2397671B (de)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9632490B2 (en) 2008-10-27 2017-04-25 Lennox Industries Inc. System and method for zoning a distributed architecture heating, ventilation and air conditioning network
US9268345B2 (en) 2008-10-27 2016-02-23 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8352081B2 (en) 2008-10-27 2013-01-08 Lennox Industries Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8655491B2 (en) 2008-10-27 2014-02-18 Lennox Industries Inc. Alarm and diagnostics system and method for a distributed architecture heating, ventilation and air conditioning network
US8744629B2 (en) 2008-10-27 2014-06-03 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8463442B2 (en) 2008-10-27 2013-06-11 Lennox Industries, Inc. Alarm and diagnostics system and method for a distributed architecture heating, ventilation and air conditioning network
US8452906B2 (en) 2008-10-27 2013-05-28 Lennox Industries, Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8802981B2 (en) 2008-10-27 2014-08-12 Lennox Industries Inc. Flush wall mount thermostat and in-set mounting plate for a heating, ventilation and air conditioning system
US8452456B2 (en) 2008-10-27 2013-05-28 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8255086B2 (en) 2008-10-27 2012-08-28 Lennox Industries Inc. System recovery in a heating, ventilation and air conditioning network
US8564400B2 (en) 2008-10-27 2013-10-22 Lennox Industries, Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8433446B2 (en) 2008-10-27 2013-04-30 Lennox Industries, Inc. Alarm and diagnostics system and method for a distributed-architecture heating, ventilation and air conditioning network
US8352080B2 (en) 2008-10-27 2013-01-08 Lennox Industries Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8463443B2 (en) 2008-10-27 2013-06-11 Lennox Industries, Inc. Memory recovery scheme and data structure in a heating, ventilation and air conditioning network
US8615326B2 (en) 2008-10-27 2013-12-24 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8977794B2 (en) 2008-10-27 2015-03-10 Lennox Industries, Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8442693B2 (en) 2008-10-27 2013-05-14 Lennox Industries, Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8661165B2 (en) 2008-10-27 2014-02-25 Lennox Industries, Inc. Device abstraction system and method for a distributed architecture heating, ventilation and air conditioning system
US9432208B2 (en) 2008-10-27 2016-08-30 Lennox Industries Inc. Device abstraction system and method for a distributed architecture heating, ventilation and air conditioning system
US9651925B2 (en) 2008-10-27 2017-05-16 Lennox Industries Inc. System and method for zoning a distributed-architecture heating, ventilation and air conditioning network
US9261888B2 (en) 2008-10-27 2016-02-16 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8655490B2 (en) 2008-10-27 2014-02-18 Lennox Industries, Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8874815B2 (en) 2008-10-27 2014-10-28 Lennox Industries, Inc. Communication protocol system and method for a distributed architecture heating, ventilation and air conditioning network
US9678486B2 (en) 2008-10-27 2017-06-13 Lennox Industries Inc. Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system
US8798796B2 (en) 2008-10-27 2014-08-05 Lennox Industries Inc. General control techniques in a heating, ventilation and air conditioning network
US8600558B2 (en) 2008-10-27 2013-12-03 Lennox Industries Inc. System recovery in a heating, ventilation and air conditioning network
US8994539B2 (en) 2008-10-27 2015-03-31 Lennox Industries, Inc. Alarm and diagnostics system and method for a distributed-architecture heating, ventilation and air conditioning network
US8694164B2 (en) 2008-10-27 2014-04-08 Lennox Industries, Inc. Interactive user guidance interface for a heating, ventilation and air conditioning system
US8788100B2 (en) 2008-10-27 2014-07-22 Lennox Industries Inc. System and method for zoning a distributed-architecture heating, ventilation and air conditioning network
US8437878B2 (en) 2008-10-27 2013-05-07 Lennox Industries Inc. Alarm and diagnostics system and method for a distributed architecture heating, ventilation and air conditioning network
US9325517B2 (en) 2008-10-27 2016-04-26 Lennox Industries Inc. Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system
US8855825B2 (en) 2008-10-27 2014-10-07 Lennox Industries Inc. Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system
US8762666B2 (en) 2008-10-27 2014-06-24 Lennox Industries, Inc. Backup and restoration of operation control data in a heating, ventilation and air conditioning network
US8239066B2 (en) 2008-10-27 2012-08-07 Lennox Industries Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8295981B2 (en) 2008-10-27 2012-10-23 Lennox Industries Inc. Device commissioning in a heating, ventilation and air conditioning network
US8600559B2 (en) 2008-10-27 2013-12-03 Lennox Industries Inc. Method of controlling equipment in a heating, ventilation and air conditioning network
US8437877B2 (en) 2008-10-27 2013-05-07 Lennox Industries Inc. System recovery in a heating, ventilation and air conditioning network
US8543243B2 (en) 2008-10-27 2013-09-24 Lennox Industries, Inc. System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network
US8560125B2 (en) 2008-10-27 2013-10-15 Lennox Industries Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8892797B2 (en) 2008-10-27 2014-11-18 Lennox Industries Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8774210B2 (en) 2008-10-27 2014-07-08 Lennox Industries, Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US9377768B2 (en) 2008-10-27 2016-06-28 Lennox Industries Inc. Memory recovery scheme and data structure in a heating, ventilation and air conditioning network
US8725298B2 (en) 2008-10-27 2014-05-13 Lennox Industries, Inc. Alarm and diagnostics system and method for a distributed architecture heating, ventilation and conditioning network
US9152155B2 (en) 2008-10-27 2015-10-06 Lennox Industries Inc. Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system
US8548630B2 (en) 2008-10-27 2013-10-01 Lennox Industries, Inc. Alarm and diagnostics system and method for a distributed-architecture heating, ventilation and air conditioning network
USD648642S1 (en) 2009-10-21 2011-11-15 Lennox Industries Inc. Thin cover plate for an electronic system controller
USD648641S1 (en) 2009-10-21 2011-11-15 Lennox Industries Inc. Thin cover plate for an electronic system controller
US8260444B2 (en) 2010-02-17 2012-09-04 Lennox Industries Inc. Auxiliary controller of a HVAC system
US9516345B2 (en) * 2014-03-17 2016-12-06 Qualcomm Incorporated Systems and methods for low complexity forward transforms using mesh-based calculations
WO2015139203A1 (en) * 2014-03-18 2015-09-24 Mediatek Singapore Pte. Ltd. Dlt signaling in 3d video coding

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2591011B2 (ja) * 1988-02-03 1997-03-19 国際電信電話株式会社 逐次復号法を用いた通信回線の回線品質推定方式
US5668897A (en) * 1994-03-15 1997-09-16 Stolfo; Salvatore J. Method and apparatus for imaging, image processing and data compression merge/purge techniques for document image databases
US5550542A (en) * 1994-05-04 1996-08-27 Matsushita Electric Corporation Of America Variable length code look-up table having separate code length determination
US5884269A (en) * 1995-04-17 1999-03-16 Merging Technologies Lossless compression/decompression of digital audio data
US6674911B1 (en) * 1995-09-14 2004-01-06 William A. Pearlman N-dimensional data compression using set partitioning in hierarchical trees
US6427147B1 (en) * 1995-12-01 2002-07-30 Sand Technology Systems International Deletion of ordered sets of keys in a compact O-complete tree
US5758353A (en) * 1995-12-01 1998-05-26 Sand Technology Systems International, Inc. Storage and retrieval of ordered sets of keys in a compact 0-complete tree
US6377930B1 (en) * 1998-12-14 2002-04-23 Microsoft Corporation Variable to variable length entropy encoding
US6389507B1 (en) * 1999-01-15 2002-05-14 Gigabus, Inc. Memory device search system and method

Also Published As

Publication number Publication date
US20040101203A1 (en) 2004-05-27
GB0327535D0 (en) 2003-12-31
CN1545211A (zh) 2004-11-10
GB2397671B (en) 2007-01-24
JP2004177965A (ja) 2004-06-24
US7123774B2 (en) 2006-10-17
GB2397671A (en) 2004-07-28

Similar Documents

Publication Publication Date Title
DE10355760A1 (de) System und Verfahren zum Codieren von Daten
DE19534943B4 (de) Vorrichtung zur Komprimierung unter Verwendung von eingebetteten Kleinwellen
DE3852615T2 (de) Digitales system zum reduzieren und uebertragen von bilddaten, das visuell gewichtete transformationskoeffizienten verwendet.
DE69523652T2 (de) Kodierungsvorrichtung
DE3485953T2 (de) Verfahren und anlage zur on-line-erkennung handgeschriebener muster.
DE69824905T2 (de) Bildseitenverhältniszoomen von Daumennagelbildern
DE69715160T2 (de) Wavelet-basierte datenkompression
DE19626615C2 (de) Verfahren und Apparat zur Kompression, das bzw. der reversible Wavelet-Transformationen und einen eingebetteten Kodestrom verwendet
DE69832593T2 (de) Netzwerk zur datencodierung
DE19626600C2 (de) Kodierer und Verfahren zum Kodieren
DE69736329T2 (de) Verschachtelte verteilte kodierung von spärlich bestückten datensätzen
DE69706439T2 (de) Rechnersortiersystem zur datenkompression
DE69634962T2 (de) Extrapolation von Pixelwerten eines in einem Block enthaltenen Videoobjektes
DE69511390T2 (de) Quellencodierer mit voreingestellter qualität
DE19534730B4 (de) Verfahren zum Codieren und Decodieren von Daten
DE69603547T2 (de) Codierungsverfahren und Decodierungsschaltung für die Komprimierung von chinesischen Textzeichendaten
DE102006029326A1 (de) Adaptive Videokompression eines graphischen Nutzerinfaces unter Verwendung von Applikations-Metadaten
DE69713559T2 (de) Scheitelbasierte hierarchische Konturumsetzung, Verfahren und Vorrichtung zur Kodierung
DE69219943T2 (de) Signalkompression unter Verwendung eines Empfindungsmodells
DE19958553A1 (de) Verfahren zur Kompression von gescannten Farb- und/oder Graustufendokumenten
DE10254192A1 (de) Verfahren und Vorrichtung zur Übertragung und Anzeige eines komprimierten digitalisierten Bildes
DE69522497T2 (de) System und Verfahren zur Datenkompression
DE112012005557B4 (de) Erzeugen eines Code-Alphabets von Symbolen zum Erzeugen von Codewörtern für Wörter, die mit einem Programm verwendet werden
DE102006030743A1 (de) System, Verfahren und Computerbefehle zur Kompression vierdimensionaler Daten
EP1397799A1 (de) Verfahren und vorrichtung zum verarbeiten von zeitdiskreten audio-abtastwerten

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee