はじめに
高解像度画像をWeb上で快適に閲覧するためには、ピラミダル構造(複数解像度)とタイル分割が不可欠です。本記事では、vipsを使用してJPEG2000画像からピラミダルタイルTIFFを作成し、各圧縮方式のファイルサイズを比較検証しました。
検証環境
- vips 8.17.3
- macOS (darwin)
- 元画像: 764029-1.jp2 (274MB)
- 出典: 国立公文書館デジタルアーカイブ
vipsコマンド
JPEG圧縮(非可逆)
ロスレス圧縮
検証結果
| ファイル | 圧縮方式 | サイズ | 元ファイル比 | 備考 |
|---|---|---|---|---|
| 元ファイル | JPEG2000 | 274MB | - | 入力 |
| q25.tif | JPEG Q=25 | 57MB | 0.21x | 非可逆・高圧縮 |
| q75.tif | JPEG Q=75 | 167MB | 0.61x | 非可逆・バランス |
| q100.tif | JPEG Q=100 | 2.4GB | 8.8x | 非可逆・高品質 |
| deflate.tif | Deflate | 2.8GB | 10.2x | ロスレス |
| lzw.tif | LZW | 3.2GB | 11.7x | ロスレス |
| none.tif | 無圧縮 | 4.3GB | 15.7x | ロスレス |
画質比較
JPEG圧縮の品質による違いを視覚的に比較しました(左から Q=25, Q=75, Q=100)。

Q=25では文字の輪郭にノイズが見られますが、Q=75以上ではほぼ劣化を感じません。
考察
JPEG圧縮
- Q=25 : 元ファイルの約1/5。文字の輪郭などにJPEG特有のノイズが見られる。プレビュー用途向け
- Q=75 : 元ファイルの約6割。品質とサイズのバランスが良く、多くの用途で推奨(vipsのデフォルト値)
- Q=100 : ロスレスに近いが、ファイルサイズはロスレス圧縮より小さい
ロスレス圧縮
- Deflate : ロスレス圧縮の中で最も効率的(2.8GB)
- LZW : Deflateより約14%大きい(3.2GB)
- 無圧縮 : 4GB超のためBigTIFF形式が必要
JPEG2000との比較
元のJPEG2000ファイル(274MB)は非常に効率的な圧縮を実現しています。JPEG2000はウェーブレット変換を使用しており、TIFFのJPEG圧縮(DCT変換)とは異なるアルゴリズムです。
ただし、JPEG2000はブラウザでの直接表示に対応しておらず、IIIFサーバー経由でのタイル配信が必要です。ピラミダルTIFFは多くのIIIFサーバー(Cantaloupe等)でそのまま利用可能です。
用途別推奨設定
| 用途 | 推奨設定 | 理由 |
|---|---|---|
| アーカイブ保存 | Deflate | ロスレスで最小サイズ |
| Web配信(高品質) | JPEG Q=75〜85 | 品質とサイズのバランス |
| Web配信(速度重視) | JPEG Q=50〜60 | 高速転送 |
| 印刷用途 | JPEG Q=90〜100 | 高品質維持 |
まとめ
vipsを使用することで、高解像度画像から効率的にピラミダルタイルTIFFを作成できます。圧縮方式の選択は用途に応じて行い、一般的なWeb配信にはJPEG Q=75が推奨されます。