変調・符号化#76
CCSDS画像圧縮標準 — ウェーブレット変換とビットプレーン符号化でデータ量を減らす
『誤りに強く送る』符号化から一転、『そもそも送るデータ量を減らす』ソース符号化(圧縮)を扱う。エントロピーとの接続、可逆/非可逆のトレードオフ、CCSDS 122.0-Bのウェーブレット変換+ビットプレーン符号化アーキテクチャ、そして率-歪み理論の考え方を学ぶ。
前提知識: 情報理論の基礎 — エントロピーと相互情報量で「情報」を測る
この回で学ぶこと
これまでの変調・符号化系のレッスンでは、畳み込み符号やLDPC符号、Reed-Solomon符号など、一貫して「誤りに強くデータを送る」ための技術を扱ってきました。これらはすべて、送るべきデータの中身はいじらず、その外側にわざと冗長なビットを追加することで、雑音まみれの通信路を通っても元のデータを復元できるようにする**通信路符号化(channel coding)**でした。
この回で扱うのは、方向性がまったく逆の技術です。そもそも送るデータの量そのものを減らす、情報源符号化(source coding)、いわゆる**圧縮(compression)**です。探査機に搭載されたカメラが撮影する1枚の画像は、素の(生の)データのままでは非常に大きく、限られた通信路容量をあっという間に食いつぶします。この「送る前にデータを小さくする」工程と、「小さくしたデータを誤りに強く送る」工程を組み合わせて初めて、探査機は限られた電力とアンテナ口径の制約の中で、科学的に価値のある量の画像を地球に届けられます。
前提レッスンの 情報理論の基礎 で学んだエントロピー は、「あるデータ源を、平均して何ビット未満には絶対に圧縮できないか」という理論的な下限を与える量でした。今回学ぶCCSDS 122.0-B(画像データ圧縮)という規格は、まさにこの下限にできるだけ近づけようとする実務的なアルゴリズムです。具体的には、**離散ウェーブレット変換(DWT)**によって画像をエネルギーが集中した形に組み替え、ビットプレーン符号化によってその組み替えた係数をエントロピーに近いビット数まで詰め込む、という2段構成のアーキテクチャを見ていきます。
直感的導入: なぜ画像圧縮が死活問題なのか
まず具体的な数値で、探査機のカメラが生成するデータ量と、深宇宙リンクのダウンリンク容量のギャップを実感してみましょう。
たとえば、4096×4096画素、1画素あたり12ビットの階調を持つ科学観測用カメラが1枚撮影したとします。生データの量は
です。一方、深宇宙探査機のダウンリンクは、地球からの距離が離れるほど信号が弱くなり(自由空間伝搬損失は距離の2乗に反比例)、実現できるデータレートは小さくならざるを得ません。仮に32 kbps(深宇宙ミッションで珍しくない低レート)しか使えないとすると、この1枚を無圧縮のまま送るのに必要な時間は
にもなります。探査機は1回の可視パス(地上局と通信できる時間帯)が数時間程度しか取れないことも多く、しかも画像はカメラだけでなく分光計や他の観測機器のデータとも帯域を奪い合います。もし4:1の圧縮ができれば送信時間は約26分、10:1なら約10.5分まで縮み、同じダウンリンク時間ではるかに多くの科学データを持ち帰れることになります。画像圧縮は「あれば嬉しい最適化」ではなく、ミッションが取得できる科学データの総量を直接左右する死活的な技術なのです。
可逆圧縮と非可逆圧縮
圧縮には大きく分けて2種類のアプローチがあります。
可逆圧縮(ロスレス圧縮)は、圧縮したデータから元のデータをビット単位で完全に復元できる圧縮です。情報を一切捨てないため、圧縮率には理論的な上限があり、前提レッスンで見た情報源符号化定理により、平均符号長はその情報源のエントロピー(あるいは、隣接画素間の相関を考慮したエントロピーレート)より小さくはできません。
**非可逆圧縮(ロッシー圧縮)**は、視覚的・統計的に重要度の低い情報を意図的に捨てることで、可逆圧縮では届かない圧縮率を実現します。復元した画像は元の画像と完全には一致しませんが、人間の目や下流の解析アルゴリズムが気づかない範囲で情報を削ることで、データ量を大幅に削減できます。
どちらを使うべきかは、そのデータが何に使われるかで決まるトレードオフです。
- 定量的な科学解析に使うデータは可逆圧縮が原則です。たとえば分光観測データや、輝度値そのものを較正して物理量(反射率、温度など)を導出するような画像は、非可逆圧縮によって生じるわずかな画素値のずれが、後段の科学的結論に系統誤差として混入しかねません。
- 広報用画像やコンテキスト確認用の画像は非可逆圧縮でも許容されることが多いです。着陸地点の様子を素早く確認したい、プレスリリース用のカラー画像が欲しい、といった用途では、多少の画質劣化と引き換えに大幅な圧縮率(ひいては早いダウンリンク)を優先する判断が合理的です。
実際のミッション運用では、同じ観測対象について「まず低解像度・高圧縮率のサムネイルを素早く送って状況確認し、必要な画像だけ後から高品質(場合によっては可逆)で送り直す」という段階的な戦略もよく取られます。
CCSDS 122.0-B: ウェーブレット変換+ビットプレーン符号化のアーキテクチャ
CCSDSは、この画像圧縮の標準として CCSDS 122.0-B, Image Data Compression を勧告しています。このアルゴリズムは、JPLがMars Exploration Rover(火星探査ローバー、Spirit/Opportunity)向けに開発した圧縮アルゴリズム ICER を基礎としており、地上の画像圧縮標準であるJPEG2000と概念的に非常に近い、次の2段構成を取ります。
- **離散ウェーブレット変換(Discrete Wavelet Transform, DWT)**による画像のマルチ解像度表現への変換
- **ビットプレーン符号化(bit-plane coding)**による、変換後の係数のエントロピー符号化
第1段: 離散ウェーブレット変換 — 画像をエネルギーが偏った形に組み替える
自然な画像(探査機が撮る惑星表面や天体の写真も同様)は、隣接する画素同士が強く相関しています。ある画素が明るければ、その隣の画素もだいたい明るい。この空間的な冗長性こそが、圧縮の付け入る隙です。
離散ウェーブレット変換は、この冗長性を「低周波(なだらかに変化する成分、近似成分)」と「高周波(急激に変化する成分、エッジやテクスチャなどの詳細成分)」に分離する数学的な道具です。1次元信号 に対する1段階のウェーブレット変換は、低域通過フィルタ と高域通過フィルタ による畳み込みと、2倍間引き(ダウンサンプリング)の組み合わせとして書けます。
は元信号のなだらかな概形を保持したまま半分の長さに縮んだ信号、 はその概形から外れる「変化の激しい部分」だけを取り出した信号です。ここで重要なのは、 をさらに同じ変換にかけて を作り、それをまた にする、という操作を再帰的に繰り返せることです。
この繰り返しにより、元の画像は「一番粗い解像度の近似成分 」と「各解像度段階での詳細成分 」の集合(ピラミッド構造、マルチ解像度表現)に分解されます。2次元画像の場合は、この操作を縦方向・横方向それぞれに適用し、各段階で「水平方向の詳細」「垂直方向の詳細」「斜め方向の詳細」の3種類の高周波サブバンドが得られます。
この変換が圧縮に効くのは、自然画像のエネルギーのほとんどが低周波の近似成分に集中し、高周波の詳細成分の係数はほとんどがゼロに近い値になるという統計的性質のためです。空が広がる背景や滑らかな地形の斜面のような領域では、ウェーブレット係数の大部分が小さく、クレーターの縁や岩の輪郭のような急激な明暗変化がある場所だけ大きな係数が立ちます。つまりDWTは、画素値をそのまま並べた「密」な表現を、少数の重要な係数だけが大きな値を持つ「疎(スパース)」な表現に組み替えてくれるわけです。この疎性こそが、後段のビットプレーン符号化で圧縮率を稼ぐための土台になります。
第2段: ビットプレーン符号化 — 重要な情報から順に詰め込む
DWTで得られた係数の集合を、そのまま固定ビット数で並べて送ったのでは、疎性を活かせません。CCSDS 122.0-Bは、係数を絶対値の大きいビット位置(ビットプレーン)から順に符号化していく方式を取ります。
ある係数の値 (整数値、符号付き)を2進展開すると、
と表せます。ここで が最上位ビット(MSB)、 が最下位ビット(LSB)です。「ビットプレーン 」とは、変換係数の集合すべてについて、このビット位置 だけを取り出して並べたものを指します。
符号化は、最上位のビットプレーン(、すなわちどの係数が「大きい」かを大まかに決める情報)から始めて、順に下位のビットプレーンへと進みます。各ビットプレーンは、すでに符号化済みの上位ビットプレーンの情報を文脈(コンテキスト)として使うコンテキスト適応型の算術符号化によってエントロピー符号化されます(すでに大きいと分かっている係数の周辺は、次のビットも1が立ちやすい、といった統計的な偏りを利用します)。
このMSBから順に送るという設計には、大きな実務的利点があります。符号化されたビット列は、頭から順に「情報として重要なものから並んでいる」ため、送信途中でストリームをどこで打ち切っても、その時点までに送ったビット数の範囲で最善に近い画質の画像が復元できます。これを埋め込み型(embedded)ビットストリームと呼びます。次に見る率-歪み理論の観点から言えば、これは「あらかじめ目標圧縮率を1つに決め打ちしなくても、後から送信可能なビット数に応じて柔軟に打ち切ることができる」という運用上の自由度を与えてくれます。
率-歪み理論: 圧縮率と画質のトレードオフを定量化する
非可逆圧縮では、「どれだけデータを削るか(レート )」と「どれだけ元の画像から劣化するか(歪み )」の間に本質的なトレードオフがあります。この関係を定量的に扱う枠組みが**率-歪み理論(rate-distortion theory)**です。
歪みの指標としてよく使われるのは平均2乗誤差(MSE)です。元画像を 、復元画像を ( は画素インデックス)とすると、
シャノンの率-歪み理論は、「歪み 以下に抑えるために理論上最低限必要なレート 」という関数を定義します。たとえば分散 のガウス情報源に対する最適な量子化では、次の近似式が成り立つことが知られています。
この式は、割り当てるビット数(レート)を1ビット増やすごとに、歪み(MSE)がおよそ4分の1(約6 dB)減少することを意味します。画質指標としてよく使われるピーク信号対雑音比(PSNR)
で言えば、「1画素あたり1ビット増やすごとにPSNRが約6 dB改善する」という、圧縮工学でよく知られる経験則(いわゆる6 dB/bitルール)に対応します。
CCSDS 122.0-Bの埋め込み型ビットストリームは、まさにこの率-歪み曲線を実務的になぞる仕組みだと理解できます。ビットプレーンをMSBから順に送るというのは、「歪みを最も大きく減らせる情報から先に送る」という貪欲な戦略になっており、任意の打ち切り点における画質が、その打ち切りビット数における達成可能な率-歪み曲線にほぼ沿う(最適に近い)ことが期待できます。運用側は「今回のダウンリンクで使える予算は何ビットか」を先に決め、その予算いっぱいまでビットストリームを送ればよく、圧縮率と画質を毎回個別に設計し直す必要がありません。
実務での使われ方
CCSDS 122.0-Bおよびその基礎となったICERアルゴリズムは、実際に複数の火星探査ミッションの画像伝送で使われてきました。
- **火星探査ローバー(MER: Spirit / Opportunity, 2004年〜)**では、JPLが開発したICERアルゴリズムが搭載カメラの画像圧縮に使われました。可逆圧縮での圧縮率はおよそ2〜3倍程度にとどまる一方、非可逆モードでは画質要求に応じて数倍から十数倍以上の圧縮率を選択でき、限られたダウンリンク容量の中で送る画像枚数を大きく増やすことに貢献しました。
- Curiosity、Perseveranceなどの後継ローバーに搭載されたMastcam-Zなどのカメラでも、同系統のウェーブレットベース圧縮が運用され、探査機-地球間の直接通信に加え、周回機(オービタ)を中継したリレー通信でのデータ返送を支えています。1回の中継パスで得られるダウンリンク容量は数百Mbit〜数Gbit程度のオーダーであり、圧縮なしでは科学チームが要求する枚数の画像を返せません。
- オンボードの計算資源制約: 探査機に搭載される計算機は、宇宙線などによる誤動作を避けるため耐放射線性を優先した設計になっており、地上の民生用CPUと比べて演算性能は大きく制限されています(たとえば火星ローバーに搭載されるRAD750プロセッサはクロック数百MHz程度)。CCSDS 122.0-Bがブロックベースの離散コサイン変換(DCT、地上のJPEGで使われる方式)ではなくウェーブレット変換を選んでいる背景には、比較的少ない演算量とメモリアクセスでマルチ解像度表現が得られ、かつビットプレーン符号化との相性が良い(埋め込みビットストリームを自然に作れる)という、限られたオンボード計算資源に適した設計思想があります。
- 圧縮処理そのものにも消費電力・処理時間の制約があるため、探査機側では「どの画像をどの圧縮率で送るか」を運用計画(サイエンスチームとエンジニアリングチームの調整)としてあらかじめ決め、それに応じてオンボードソフトウェアが圧縮パラメータを設定する、という運用フローが取られます。
演習問題
- 2048×2048画素、1画素あたり8ビットの画像を、ダウンリンクレート64 kbpsで無圧縮のまま送るのに必要な時間を計算してください。また、CCSDS 122.0-Bによる非可逆圧縮で6:1の圧縮率が得られた場合、送信時間はどう変わるか求めてください。
- ある探査機画像データについて、可逆圧縮で得られる圧縮率の理論的な上限は、そのデータのビット深度 (1画素あたりのビット数)と、隣接画素間の相関を考慮したエントロピーレート の比 で近似的に表せます。 ビット、 ビット/画素と推定される場合、理論上の可逆圧縮率の上限はいくらか計算し、この数値が意味することを 情報理論の基礎 の情報源符号化定理と関連づけて説明してください。
- 率-歪みの近似式 を用いて、レート を1画素あたり2ビットから4ビットに増やしたとき、PSNRが何dB改善するか計算してください。また、この「6 dB/bitルール」がCCSDS 122.0-Bの埋め込み型ビットストリームの設計とどう関係しているか、自分の言葉で説明してください。
- ある探査機が同じ地形について、(a) 定量的な標高解析に使う可逆圧縮画像と、(b) プレスリリース用の非可逆圧縮画像の2種類を送る運用を考えているとします。それぞれどちらの圧縮方式を選ぶべきか、そしてその理由を、本文中の「可逆圧縮と非可逆圧縮」の議論に沿って説明してください。
まとめと次回予告
この回では、これまでのレッスンとは方向性の異なる「データ量そのものを減らす」情報源符号化を扱いました。エントロピーが与える理論的な圧縮限界を出発点に、CCSDS 122.0-Bが離散ウェーブレット変換によるマルチ解像度表現とビットプレーン符号化による埋め込み型ビットストリームを組み合わせることで、限られたダウンリンク容量の中でできるだけ多くの視覚的・科学的情報を送る仕組みを見ました。また、レートと歪みのトレードオフを定量化する率-歪み理論の考え方も導入しました。圧縮(情報源符号化)によって小さくなったデータは、この先また誤り訂正符号(通信路符号化)で保護されて送信される、という点を思い出しておいてください。
次回以降では再び物理層の実装の話に戻り、実際の変調・復調回路が理想的な数式通りには動かないことによって生じる実装損失(implementation loss)、たとえば直交する2つの信号成分(I/Q)の振幅・位相のわずかなずれであるI/Q不平衡のような要因が、リンク性能にどう効いてくるかを扱います。
参考文献
- CCSDS 122.0-B-2, Image Data Compression, Blue Book
- P.-S. Yeh, P. Armbruster, A. Kiely, B. Masschelein, G. Moury, C. Schaefer, C. Thiebaut, “The New CCSDS Image Compression Recommendation,” IEEE Aerospace Conference, 2005
- A. Kiely, M. Klimesh, “The ICER Progressive Wavelet Image Compressor,” IPN Progress Report 42-155, JPL, 2003
- T. M. Cover, J. A. Thomas, Elements of Information Theory, 2nd ed., Wiley
- CCSDS 121.0-B, Lossless Data Compression
- J. H. Yuen (ed.), Deep Space Telecommunications Systems Engineering, JPL Publication 82-76