株式会社インターワーク

CCITT圧縮とは?仕組みと用途をわかりやすく解説

CCITT圧縮は、白黒2色の画像を効率よく可逆圧縮するアルゴリズムです。TIFFやPDFで広く使われるCCITTの仕組み、グループ3・4の違い、活用方法を解説します。

(更新:
CCITT圧縮とは?仕組みと用途をわかりやすく解説

CCITT圧縮は、モノクロ(白黒2色)の画像を効率よく圧縮するために設計された可逆圧縮アルゴリズムです。TIFFファイルやPDFドキュメントの内部で広く使用されており、特にスキャンされた文書や図面の保存に欠かせない技術です。この記事では、CCITTの歴史的な背景から圧縮の仕組み、実際の活用方法までをわかりやすく解説します。

CCITTとは何の略ですか?

CCITTは、フランス語の「Comite Consultatif International Telephonique et Telegraphique(国際電信電話諮問委員会)」の頭文字を取った略称です。この組織は1956年に設立され、国際電気通信連合(ITU)の一部門として、電話や電信に関する国際的な標準規格の策定を担当していました。

1993年にCCITTはITU-Tセクター(ITU電気通信標準化部門)に再編されましたが、圧縮方式の名称としては現在でも「CCITT」が広く使われています。CCITT圧縮の正式な標準規格名は、ITU-T勧告のT.4(グループ3)およびT.6(グループ4)です。

CCITTはどのようにデータを圧縮しますか?

CCITTの圧縮方式は、2色(通常は白と黒)のみで構成される画像に特化しています。画像データの特性を活用し、同じ色のピクセルが連続するパターンを効率的にエンコードします。

グループ3(T.4)圧縮

グループ3では、画像の各走査線(行)を独立にエンコードします。各行について、連続する白ピクセルと黒ピクセルの「ラン」(連続する同色ピクセルの長さ)を記録し、それをハフマン符号と呼ばれる可変長符号に変換します。

ハフマン符号化の基本的な考え方は、頻度の高いパターン(たとえば長い白の連続)には短い符号を、頻度の低いパターンには長い符号を割り当てることです。これにより、データ全体のサイズを効率的に削減できます。

グループ3にはさらに2つのサブモードがあります。

  • 1次元(1D)モード: 各行を完全に独立してエンコード
  • 2次元(2D)モード: 前の行との差分を利用してエンコードの効率を向上

グループ4(T.6)圧縮

グループ4は、グループ3の2次元モードをさらに発展させた方式です。すべての行を前の行との差分情報を使ってエンコードするため、グループ3よりも高い圧縮率を実現します。特に、テキスト文書やCAD図面のような、行ごとの変化が少ない画像に対して非常に高い効率を発揮します。

ただし、グループ4はエラーに対する耐性がグループ3よりも低くなります。1つの行でエラーが発生すると、後続の行にもエラーが伝播する可能性があるためです。そのため、通信回線でのファクシミリ転送にはグループ3が使われ、グループ4はローカルのファイル保存に使用されることが多いです。

圧縮効率

CCITT圧縮が最も効果を発揮するのは、以下のような特徴を持つ画像です。

  • 白地に黒い文字やラインが描かれた文書画像
  • 白黒の単純なパターンの繰り返し
  • 解像度の高いスキャン画像

一般的に、テキスト文書のスキャン画像では10:1から20:1の圧縮率が達成できます。ただし、写真のようにピクセルの変化が激しい画像には向いていません。

CCITTの主な用途

ファクシミリ(FAX)通信

CCITTの最初の大きな用途は、ファクシミリで送信される画像のサイズを小さくすることでした。電話回線の帯域が限られていた時代に、送信時間を短縮するために開発された背景があります。グループ3はFAX通信の標準規格として現在でも使われています。

TIFF画像

TIFF(Tagged Image File Format)は、CCITT圧縮を内部の圧縮方式としてサポートしています。スキャンされた文書をTIFFファイルとして保存する際に、CCITTグループ4が使われることが非常に多いです。これにより、画質を一切損なうことなく、ファイルサイズを大幅に削減できます。

PDFドキュメント

PDFファイルの内部でも、モノクロ画像の圧縮にCCITTが使用されます。たとえば、スキャンされた契約書や領収書をPDF化する際に、CCITT圧縮が適用されることで、可読性を維持しながらファイルサイズを抑えることができます。

CCITTと他の圧縮方式の比較

圧縮方式種類対応色数主な用途
CCITT グループ3可逆2色(白黒)FAX通信、TIFF
CCITT グループ4可逆2色(白黒)TIFF、PDF
LZW可逆フルカラー対応GIF、TIFF
JPEG(DCT)非可逆フルカラー対応写真画像全般
JBIG2可逆/非可逆2色(白黒)PDF

JavaでCCITT圧縮を扱うには

CCITTは一般的に、TIFFリーダーやPDFライブラリの一部として使われるため、「スタンドアロン」のCCITTソフトウェアは多くありません。JavaでCCITT圧縮データを扱う必要がある場合は、TIFFの読み書きに対応した画像ライブラリを利用するのが効率的です。

CCITTデータの圧縮・解凍が必要な場合は、JDeli Imageライブラリをご検討ください。JDeliはTIFFのCCITTグループ3・グループ4圧縮に完全対応しており、JavaのAPIを通じて簡単にエンコード・デコード処理を行えます。

また、PDFファイル内のCCITT圧縮画像を処理する必要がある場合は、JPedal PDFライブラリも選択肢の一つです。JPedalはPDF内のすべての画像圧縮方式に対応しており、高精度な画像抽出が可能です。

Javaで画像を扱う開発には、多機能・高性能な開発ライブラリ(SDK)JDeliがお役に立ちます。JDeliは無料で試用していただけます。画像フォーマット変換の機能や動作速度などを、まずはご自身の環境でご確認のうえ、ぜひ導入をご検討ください。

開発者向けPDF入門ガイド 表紙
無料 eBook / 25p

開発者向けPDF入門ガイド

PDFの仕様や活用方法など、開発者に必要な情報をコンパクトにまとめました。初めてPDFを扱う開発者にも分かりやすく、基礎から応用までカバーしているため、PDFのポテンシャルを最大限に引き出し、アプリケーション開発やドキュメント管理の効率化を図るための手引きとなるでしょう。

ご興味のある製品:

ご入力いただいた情報は、eBookの送付およびインターワークからのご案内にのみ使用いたします。プライバシーポリシー