c44 - Referenzhandbuch, Optionen, Befehlsbeispiele


NAME

c44 - DjVuPhoto-Kodierung.

ZUSAMMENFASSUNG

c44 [options] inputfilename [outputfilename]

BESCHREIBUNG

Erzeugt ein DjVuPhoto-codiertes Bild. Die Eingabebilddatei inputfilename kann entweder eine portable Gray-Map (PGM) oder eine portable Pix-Map (PPM) sein. Mit JPEG komprimierte Eingabebilder werden ebenfalls akzeptiert. Es wird jedoch empfohlen, nur JPEG-Dateien mit hoher Qualität zu verwenden (niedriges Komprimierungsverhältnis, große Größe), da die Wavelet-Komprimierung die bereits in stark komprimierten JPEG-Dateien vorhandenen Mängel verstärkt.

Das Programm erzeugt eine DjVuPhoto-Datei Ausgabedateiname. Wenn der Name der Ausgabedatei nicht angegeben ist, wird ein Standarddateiname generiert, indem das Suffix des Eingabedateinamens durch das Suffix djvu ersetzt wird.

Das Hauptziel des Entwurfs der DjVu-Wavelets bestand darin, progressives Rendern und reibungsloses Scrollen großer Bilder bei begrenztem Speicherbedarf zu ermöglichen. Decodierungsfunktionen verarbeiten die komprimierten Daten und aktualisieren eine speichereffiziente Darstellung der Wavelet-Koeffizienten. Die Bildgebungsfunktion kann dann mithilfe der verfügbaren Daten schnell einen beliebigen Ausschnitt des Bildes rendern. Beide Prozesse können in zwei Ausführungsthreads ausgeführt werden. Dieses Design spielt eine wichtige Rolle im DjVu-System. Wir haben verschiedene hochmoderne Wavelet-Komprimierungsschemata untersucht. Obwohl diese Schemata möglicherweise etwas kleinere Dateigrößen erreichen, entsprachen die Dekodierungsfunktionen nicht einmal unseren Anforderungen. Der

Wavelets erfüllen diese Anforderungen heute und können in Zukunft modernere Verfeinerungen implementieren, wenn diese Verfeinerungen innerhalb unserer Einschränkungen implementiert werden können.

QUALITÄTSAUSWAHLMÖGLICHKEITEN

DjVuPhoto-Dateien bestehen logisch aus einer Folge von „Slices“, die aufeinanderfolgende Bildverfeinerungen enthalten. Slices werden in „Chunks“ gruppiert, die die progressive Rendering-Sequenz definieren. Der Betrachter kann nach der Verarbeitung jedes Chunks ein Zwischenbild anzeigen. Eine typische DjVuPhoto-Datei enthält 80 bis 120 Slices, gruppiert in 1 bis 4 Blöcke.

Die Qualitätsauswahloptionen bieten verschiedene Möglichkeiten, die Anzahl der Chunks und die Anzahl der Slices pro Chunk anzugeben. Das Programm c44 fügt Slices zum aktuellen Chunk hinzu, bis eine Zielanzahl an Slices, eine Zieldateigröße oder eine Zielqualitätsspezifikation überschritten wird. Die folgenden Optionen definieren Ziele für jeden Block. Das Optionsargument enthält mehrere numerische Werte (einen pro Block), die entweder durch Kommas oder Pluszeichen getrennt sind.

-slice n+...+n

Geben Sie die Anzahl der Slices in jedem Block an. Das Optionsargument enthält durch Pluszeichen getrennte numerische Werte (einen pro Block), die die Anzahl der Slices pro Block angeben. Die Option -slice 74+13+10 eignet sich beispielsweise zum Komprimieren eines fotografischen Bildes mit drei progressiven Verfeinerungen. Mehr Qualität und weitere Verfeinerungen können mit der Option -slice 72+11+10+10 erzielt werden.

-slice n,...,n

Geben Sie die kumulative Anzahl von Slices für jeden Block an. Da die endgültige Qualität durch die Gesamtzahl der Slices bestimmt wird, ist es häufig praktischer, durch Kommas getrennte Werte (einen pro Chunk) zu verwenden, die die kumulative Anzahl der Slices für jeden Chunk angeben (d. h. einschließlich derjenigen, die in allen vorherigen Chunks codiert sind). Die oben vorgeschlagenen Werte können auch als -slice 74,87,97 und -slice 72,83,93,103 ausgedrückt werden.

-size n,...,n

Geben Sie Größenziele für jeden Block in Bytes an. Das Optionsargument kann entweder eine durch Pluszeichen getrennte Liste sein, die eine Größe für jeden Block angibt, oder eine durch Kommas getrennte Liste, die kumulative Größen für jeden Block und alle vorherigen Blöcke angibt. Größenziele sind Näherungswerte. Zu jedem Block werden Slices hinzugefügt, bis das angegebene Ziel überschritten wird.

-bpp n,...,n

Geben Sie Größenziele für jeden Block an, ausgedrückt in Bits pro Pixel. Es werden sowohl durch Kommas als auch durch Pluszeichen getrennte Angaben akzeptiert. Die Option -bpp 0.25,0.5,1 liefert normalerweise gute Ergebnisse.

-percent n,...,n

Geben Sie Größenziele für jeden Block an, ausgedrückt als Prozentsatz der Eingabedateigröße. Es werden sowohl durch Kommas als auch durch Pluszeichen getrennte Angaben akzeptiert. Die Ergebnisse können je nach Format des Eingabebildes (Rohbild oder

komprimiert).

-decibel n,...,n

Geben Sie Qualitätsziele für jeden Block an, ausgedrückt als durch Kommas getrennte Liste ansteigender Dezibelwerte. Die Dezibelwerte reichen von 16 (sehr niedrige Qualität) bis 48 (sehr hohe Qualität). Dieses Kriterium sollte nicht herangezogen werden, wenn ein Bild, das zuvor mit einem anderen Komprimierungsschema komprimiert wurde, erneut kodiert wird. Die Auswahl dieser Option erhöht die Komprimierungszeit erheblich.

-dbfrac frac

Geben Sie an, dass die in der Option -decibel angegebenen Dezibelwerte durch Mittelung der mittleren quadratischen Fehler nur des Bruchteils frac der am häufigsten falsch dargestellten Blöcke von 32 x 32 Pixeln berechnet werden sollen . Diese Option ist bei zusammengesetzten Bildern nützlich, die einfarbige Merkmale enthalten (z. B. ein Bild mit einem großen weißen Rand).

Wenn Sie keine Qualitätsspezifikationsoptionen angeben, wird automatisch eine Standardqualitätsspezifikation -Slice 74,89,99 ausgewählt. Es sind mehrere Optionen zur Qualitätsspezifikation zulässig. Das Programm gibt eine Datei aus, deren Gesamtanzahl an Chunks die größte Anzahl an Chunks aller Qualitätsangaben ist. Zu jedem Block werden Slices hinzugefügt, bis eines der Qualitätsziele für diesen Block erreicht ist.

ANDERE OPTIONEN

Die folgenden zusätzlichen Optionen werden unterstützt:

-dpi n

Geben Sie die in der Ausgabedatei kodierten Auflösungsinformationen in Punkten pro Zoll an. Die in DjVu-Dateien kodierten Auflösungsinformationen bestimmen, wie der Decoder das Bild auf einem bestimmten Display skaliert. Sinnvolle Auflösungen liegen zwischen 25 und 1200. Der Standardwert 100 dpi sollte für die meisten Fotobilder geeignet sein.

-gamma n

Geben Sie die in der Ausgabedatei codierten Gammakorrekturinformationen an. Das Argument n gab den Gammawert des Geräts an, für das das Eingabebild entworfen wurde. Der Standardwert ist 2,2. Dies ist für Bilder geeignet, die für einen Standard-Computermonitor erstellt wurden.

-mask pbmfilename

Das Design des

Wavelets ermöglichen die Komprimierung teilweise maskierter Bilder. Diese Option kann verwendet werden, wenn bestimmte Pixel eines Hintergrundbilds von Vordergrundobjekten wie Text oder Zeichnungen verdeckt werden. Die Datei pbmfile muss eine sein

Datei, deren Größe mit der Größe der Eingabedatei übereinstimmt. Jedes schwarze Pixel in pbmfile bedeutet, dass der Wert des entsprechenden Pixels in der Eingabedatei irrelevant ist. Der

Der Encoder ersetzt die maskierten Pixel durch einen Farbwert, dessen Codierungsaufwand minimal ist (siehe http://www.djvuzone.org/djvu/techpapers/mask/index.djvu für technische Details.)

-crcbnormal

Wählen Sie die normale Chrominanzkodierung. Chrominanzinformationen werden mit der gleichen Auflösung wie die Luminanz kodiert. Dies ist die Standardeinstellung.

-crcbhalf

Wählt die Chrominanzkodierung mit halber Auflösung aus. Chrominanzinformationen werden mit der halben Luminanzauflösung kodiert.

-crcbdelay n

Diese Option kann mit -crcbnormal und -crcbhalf verwendet werden, um die Qualität der Chrominanzinformationen zu ändern. Die Optionsargumente geben einen Parameter n an, ausgedrückt in Slices, der die mit der Chrominanz verbundene Bitrate reduziert. Die Standardverzögerung für die Chrominanzkodierung beträgt 10 Slices.

-crcbfull

Wählen Sie die höchstmögliche Qualität für die Kodierung der Chrominanzinformationen. Dies entspricht der Angabe von -crcbnormal und -crcbdelay 0.

-crcbnone

Deaktivieren Sie die Kodierung der Chrominanz. Es werden nur die Luminanzinformationen kodiert. Das resultierende Bild wird in Graustufen angezeigt.

BEMERKUNGEN

Die Standardqualitätseinstellung der DjVuLibre-Version von c44 wurde erhöht. Es werden größere Dateien mit besserer Qualität erstellt. Mit den Qualitätsauswahloptionen kann die Qualität gesenkt werden!

Fehler

Der Encoder benötigt mehr Speicher als nötig.
Die Möglichkeit zum erneuten Zusammenbauen ist derzeit nicht verfügbar.

KREDITE

Dieses Programm wurde von Léon Bottou geschrieben und dann von Andrei Erofeev , Bill Riemers und vielen anderen verbessert.

SIEHE AUCH

djvu(1), pnm(5), cjpeg(1).