WebPの秘密

- 発行形態
- 同人
- 著者
- ゆずねり
- イラスト
- 参号
- デザイン
- しらうた
- 発売日
- 判型
- A5
- ページ数
- 100ページ
基本情報
写真はJPEG、アイコンや透過画像はPNG、アニメーションはGIF。 長い間、Webの画像はこの三つのフォーマットを使い分けるのが常識でした。
2010年、Googleがこの常識を覆します。 写真も、イラストも、アニメーションも、すべてを一つでまかなうWebPの発表です。 その中身を開けてみると、まったく異なる二つの圧縮技術が同居しています。
非可逆圧縮のベースは、動画コーデックの技術をそのまま静止画に持ち込んでいます。 WebPは「1フレームしかない動画」として、画像を圧縮するのです。 一方、可逆圧縮にはPNGの限界を超えるべく、画像専用のコーデックがゼロから設計されました。
本書では、RIFFコンテナの中に何が詰まっているのかを覗き、VP8とVP8Lという二つのコーデックがどうやって画像を縮めるのかを追いかけます。 変換ツールの使いこなしにも踏み込み、各オプションと圧縮の仕組みが、どうつながっているのかを掘り下げます。 さらに、Webサイトでの配信や既存フォーマットとの使い分けなど、実践的なヒントもお伝えします。
WebPの秘密を、一緒に解き明かしていきましょう。
目次
- 第1章 WebPとは何か
- 画像フォーマットの歴史
- WebPの誕生
- WebPの特徴
- 非可逆圧縮と可逆圧縮の両対応
- アルファチャンネル
- アニメーション
- メタデータ
- 従来フォーマットとの比較
- ブラウザー対応と普及
- 第2章 WebPファイルフォーマット
- RIFFフォーマット
- ファイルヘッダー
- チャンクの基本構造
- ファイルレイアウト
- Simple Lossy
- Simple Lossless
- Extended
- チャンク構造
- VP8
- VP8L
- VP8X
- ICCP
- ALPH
- ANIM
- ANMF
- EXIF
- XMP
- 第3章 非可逆圧縮(VP8)
- VP8の概要
- JPEGとの処理フロー比較
- 色空間変換
- ダウンサンプリング
- マクロブロックへの分割
- イントラ予測
- 輝度予測モード
- 色差予測モード
- 離散コサイン変換
- JPEGのDCT
- VP8の整数DCT
- 2パス構造と分離可能性
- 整数演算による実装
- 計算例
- Walsh-Hadamard変換
- DC係数の配置
- Hadamard行列
- 計算例
- 量子化
- 量子化インデックスと逆量子化テーブル
- 計算例
- セグメントベースの適応量子化
- トレリス量子化
- ブール算術符号化
- 算術符号化の原理
- 有限精度と正規化
- VP8における確率の決定
- パーティション構造
- DCT係数の符号化
- ジグザグスキャン
- トークンツリー
- ループフィルター
- デコード処理におけるフィルターの位置づけ
- フィルターの種類
- 適用順序と判定の概要
- フィルターパラメーターの算出
- エッジ条件
- 内部平滑性条件
- HEV条件
- フィルター値の計算
- Simpleフィルター
- Normalフィルター(HEV成立)
- Normalフィルター(HEV不成立・サブブロック境界)
- Normalフィルター(HEV不成立・マクロブロック境界)
- レート歪み最適化
- レート歪みコスト関数
- 空間ノイズシェーピング
- 探索精度と処理速度
- アルファチャンネル
- 量子化
- フィルタリング
- VP8Lによる圧縮
- エンコードパラメーターと内部処理の関係
- qualityパラメーター
- methodパラメーター
- sharp_yuvオプション
- snsパラメーター
- segmentsパラメーター
- preprocessingパラメーター
- フィルター制御パラメーター
- presetパラメーター
- cwebp主要オプション一覧
- VP8の概要
- 第4章 可逆圧縮(VP8L)
- VP8Lの概要
- PNGとの処理フロー比較
- 画像変換
- 予測変換
- モード11(Select予測)
- モード12(ClampAddSubtractFull予測)
- モード13(ClampAddSubtractHalf予測)
- 色変換
- 緑チャンネル減算変換
- カラーインデックス変換
- カラーテーブルの構築
- ピクセルバンドリング
- LZ77後方参照
- 2次元距離マッピング
- 長さと距離のプレフィックス符号化
- カラーキャッシュ
- LZ77後方参照との比較
- プレフィックス符号化
- 正準化の原理
- 五つのプレフィックスコードグループ
- メタプレフィックスコード
- ハフマンテーブルの格納
- エンコードパラメーターと内部処理の関係
- qualityパラメーター
- methodパラメーター
- 可逆プリセット
- near_losslessパラメーター
- cwebp可逆圧縮オプション一覧
- VP8Lの概要
- 第5章 WebP活用法
- HTMLでの記述方法
- img要素による直接指定
- picture要素によるフォールバック
- レスポンシブ画像との組み合わせ
- 画像の読み込み最適化
- 配信と変換
- コマンドラインツールによる変換
- Content Negotiation
- CDN・画像最適化サービス
- フレームワーク・ビルドツール連携
- プログラマティックな変換
- フォーマットの使い分け
- WebPの利用が有利なケース
- 写真
- イラスト・ロゴ・アイコン
- 透過画像
- アニメーション
- WebPの利用が不利なケース
- 超高解像度画像
- 高度な色表現が必要な画像
- 極端に色数が少ない画像
- ブラウザー以外での利用
- HTMLでの記述方法