Wavelets/jp

From RawPedia
(Redirected from Wavelet Levels/jp)
Jump to: navigation, search

ウェーブレット

注意:この項目“ウェーブレットのレベル”は一部翻訳が終わっていません。また、翻訳が終了している部分でも、追加や修正が加えられる可能性があります。


 このツールの効果は画像の拡大・縮小に関係なく見ることが出来ますが、正確に見極めるためには、画像のサイズを100%、或いはそれ以上にして見る必要があります。画像サイズは知覚できるシャープ感に直接影響するからです。実践的に言えば、画像を拡大・縮小する時は、意図している最終画像の大きさとそれを観視する距離を意識して使う、と言う意味です。例えば、これをディテールタブにある“ディテールのコントラスト”機能を使って説明すると、貴方が高解像度画像を90x60cmというような大きいサイズで印刷し、それを30cmの距離から観賞するつもりであれば、プレビュー画像を100%以上の大きさで表示して、 “0”のスライダー(最も細かい)を使って細部を調整することは、理に適っています。しかし、その様に大きな写真は、例えば壁に掛けて数メートル離れたところから鑑賞するのが普通でしょうから、細部の調整には意味がありません。何故なら、人間の目ではその様な距離から細部のコントラストを見分けることが出来ないからです。同じ事は、友人や顧客向けに、リサイズした画像(ピクセル数が少ない)をインターネットやEメールで送る場合についても言えます。サイズが小さくなったからだけではなく、それを見る相手側のデバイス(ラップトップ、タブレット、スマートフォンなど)の解像度も高くなく、しかもそれを全画面表示では見ないでしょう。つまり、細部を調整するスライダー(“0”や“1”)の効果は相手に全く見えないので、それを調整することは時間の無駄ということになります。一般的に、この様な場合は、“2”以上のスライダーによる調整が最も効果を発揮します。

ウェーブレットとは?

 ウェーブレット、もっと特定的に言えば、ウェーブレット変換は画像処理に大変有効な数学関数です。画像を幾つもの詳細レベルに分離・独立させることが出来るので、目標とするレベルの画像調整が可能です。英語の“wavelet”は1980年代初期に、フランスの物理学者、Jean MorletとAlex Grossmanによって紹介されました。彼らはフランス語の“ondelette”を使っていましたが、これは英語で“small wave”という意味です。その後、この“onde”の部分が英語の“wave”に訳され、“wavelet”になったのです。ウェーブレット変換は、フーリエ変換にかなり近いものですが、一般的な違いは、ウェーブレット変換が時間領域と周波数の両方で局所化出来るのに対し、標準的なフーリエ変換は周波数だけでしか局所化出来ない事でしょう。

 現在、RawTherapeeはL*a*b*色空間をベースにして、ウェーブレット変換で画像を分解しています。この分解により、ファンダメンタルズの異なる2種類のデータが得られます:

  1. 幾つもの詳細レベルのデータ:この分解で目的に応じた詳細レベルを選ぶことが可能になります。初めの詳細レベルは2x2ピクセルの画像に相当します、10番目の詳細レベルは1024x1024ピクセルの画像に相当します。よって、レベルの数字が上がれば、処理時間やメモリーの使用量も増加します。ウェーブレット変換によって求められるのは、各レベルの、“変化量”(正負の値、例えば、コントラストの場合は、0+D1、0-D2、のような)というデータだけです。ですから、元画像の輝度と色が完璧に均一であれば、どの詳細レベルから得られるデータにも変化が無いことになりますが、通常は画像に沢山の変化がある訳ですから、その変化量で各レベルの区別が可能となります。そのためには特定のアルゴリズムが必要です。得られる情報の質は使われるマザーウェーブレットの関数次第です。dcraw(英語)やGIMPでは単純な“メキシカンハット関数(英語)” が使われていますが、RawTherapeeでは、より複雑で効果の高いドブシー関数(英語)が使われています。
  2. 残差画像:これは幾つにも分解した詳細レベルのデータを全て合算し、元画像のデータからそれを引き算した画像です。扱いの点から言えば、この残差画像も元画像と同じ性質を持っていますが、詳細レベルの画像のようなデータはありません。詳細レベルの画像で、調整(コントラストや色度など)を行っても残差画像に影響しませんが、その逆もまた然りです。

 編集目的に応じて、特定の詳細レベルの画像、全てのレベルの画像、残差画像、或いはその両方を見極める必要がありますが、RawTherapeeではそれが驚くほど簡単に行えます。

 画像を分解した後、ウェーブレット変換を様々な目的で使うことが出来ます:

  • 画像の圧縮
  • ノイズの低減処理
  • シークレット透かし(英語)を入れる
  • 天体撮影における特殊な処理:星雲や星を背景(残差画像)から分離、或いはダスト雲と星を分離
  • など

 ウェーブレット変換により、画像の各詳細レベルが輝度(コントラスト)と色チャンネル“a*”と“b*”の色度に分解され、そして、それらのデータを元画像から取り去った残差画像が分離されます。この分解により、詳細レベルの輝度や、色度、及び選択されたレベル数によって決まる残差画像に対し、個別の処理が可能になるのです。ソフトの開発者にとって、既存の処理プロセスを、他に拡張することも可能でしょう。例えば、詳細レベルというのは、事実上、レイヤーと同じようなものなので、適切なユーザーインターフェイスを作れば、各詳細レベルで編集することが可能であり、画像の質を落とさずに済みます。理論的には、残差画像に対しても、RawTherapeeが持つ機能(Lab調整や、トーン調整、チャンネルミキサーなど)での処理が可能でしょう。但し、そのためにはメモリー使用量と処理時間の増加が不可避かもしれません。

 “環境設定→パフォーマンスとクオリティ”で、使用するマザーウェーブレットのタイプを変えることが出来ます:

  • ドブシー関数のタイプで、D4の代わりにD6を選ぶと、ウェーブレット変換の係数が増加します。
  • 但し、この変更は残差画像や、高レベル(5~10)には殆ど影響しません。
  • ここはまだ編集中です
  • D4とD6で、処理時間や必要なメモリー使用量は殆ど変りません。

 その詳細レベルの画像と残差画像の“処理”が終われば、レイヤーを統合するように、画像を重ね合わせるだけです(逆ウェーブレット変換)。

 RawTherapeeにはウェーブレットのレベルに似ている“ディテールレベルのコントラスト(略称:CbDL)”という機能が備わっていますが、幾つか異なる点があります:

  • CbDLはレベルの数が少ない。
  • ここはまだ編集中です
  • CbDLには残差画像がありません。

ここはまだ編集中です

ユーティリティ

詳細レベルの総数

 このスライダーで、幾つの詳細レベルに分解するか決めます。レベルの数が増えれば、処理時間やメモリー使用量も増えます。

 例えば、レベルの数を5のような低い数に設定すると、詳細レベルのスケールは最大で32x32ピクセルまでに限定されます。この場合、残差画像は、レベル0~5までの詳細データが元画像から取り去られただけの画像で、まだ多くのデータが残っているため、映りはあまり元画像と変わりません。

 9(10番目のレベルは“エキストラ”と名付けています)に設定すると、詳細レベルのスケールは最大512x512ピクセルになります。“エキストラ”を選べば、それが1024x1024ピクセルになります(但し、それはプレビュー画像が大きくないと見ることが出来ません)。レベル9の設定では、0~10段階のレベルに分解された際のデータが元画像から取り去られていますので、残差画像の映りは、ぼんやりしたマスクだけのように著しく変わります。

 残差画像は、上記のレベルの数で設定された全ての詳細レベルの情報が、元画像から除かれた画像を言います。例えば、レベルの数を7に設定した場合、初めの3つ(レベル0~2)のコントラストスライダーしか使わないとしても、残差画像は0~6までの詳細レベルのデータが除かれた画像です、レベル0~2だけのデータを除いた画像ではありません。

 重要!:RawTherapeeでは、詳細レベルのスケールが元画像のサイズを超えない範囲で、幾つもの詳細レベルに画像を分解できます。仮に元画像のサイズが1024x1024ピクセルより大きければ、1024x1024ピクセルの詳細レベル(“エキストラ”)に対して行う調整も保存画像で見ることが出来ます。 元画像がそれより小さければ、1024x1024の詳細レベルは無効です。ここは重要な点なので覚えておいて下さい。この原則はプレビュー画像に対しても同じだからです:元画像は1024x1024より大きいが、プレビュー画面で表示できるエリアがそれより小さい場合は、この詳細レベルがプレビューでは無効にされてしまうのです(但し、保存画像では有効です)。と言うことは、プレビュー表示の大きさによっては、そこで見る画像と、保存画像とで、見え方が著しく違う可能性があるということです。これをお忘れなく。プレビュー画像の表示エリアは、左右のパネルを非表示(ショートカット“m”)にしたり、RawTherapeeを全画面表示(ショートカット“F11”)にしたりすることで、ある程広げることが可能です。画面のコントラストスライダーの下に、その時点で表示可能な詳細レベルが表示されます:例えば、“プレビュー表示可能な詳細レベル=9”という様に。

画像全体とタイルサイズ

 選択ボックスから、ウェーブレット変換を適用する画像の大きさを決めます:

  • 画像全体
  • サイズの大きなタイル
  • サイズの小さなタイル

 質の点を考えれば、支障がない限り、“画像全体”を使うことを奨めます。タイルを使う方法より精度が高いからです。しかし、貴方の元画像が非常に大きく(例えば、50メガピクセル以上)、調整過程でRAM容量不足の心配がある場合は、タイルを選択します。

必要なメモリー容量の目安

 適用が“画像全体”で、詳細レベルの総数を9に設定した場合の必要メモリー量(MiB:メビバイト)を、2つのカメラを例にとって説明します:

  1. ペンタックス K10D (10.2MP) 3888 x 2608
  2. ニコンD810 (36.3MP) 7360 × 4912
ベースライン
RawTherapeeでその画像を開く際に必要な必要最低限のメモリー
width*height*12
K10D: 116MiB
D810: 414MiB
詳細レベルのコントラスト、色度、或いは色相の目標/保護を使う場合に必要なメモリー
levels*width*height*3 + width*height*7
K10D: 329MiB
D810: 1172MiB
更に色ずれの回避を使った場合のメモリー量
width*height*4
K10D: 39MiB
D810: 138MiB
トータル
K10D: 483MiB
D810: 1724MiB

ウェーブレットのレベルの表示

 このパネルにはコンボボックスのメニューが3つあり、メインプレビューで何を見るか区別出来ます。この選択があることで、ウェーブレット変換がどのように働くか理解する助けになると思います。メニューの変更で変わるのはプレビューだけであり、処理画像には影響しません。

 初めのコンボボックスでプレビューの表示を選びます:

  1. ウェーブレットのレベルを一つだけ表示
  2. そのレベル、或いはそれ以下のレベルを表示
  3. その上のレベルと残差画像を表示
  4. 全てのレベルと方向を表示

 2番目のコンボボックスは、レベル“0”~“8”の中から、上記の選択で使う参考レベルを特定します。

 3番目のコンボボックスは、先のプレビューオプションの最初の3つの選択に関し、ウェーブレットの方向を決めます。

  1. 垂直
  2. 水平
  3. 対角線
  4. 全て

 例えば、“ウェーブレットのレベルを一つだけ表示”を選択し、調整したいウェーブレットのレベルを探し(例、肌のキメは調整しないが、シミなどは消したいというレベル)、目標に適しているかどうかを確認します。

 別な例として、“そのレベル以上+残差画像”と“レベル8”を選び、残差画像をチェックし、後述する“残差画像”で説明されている調整を施して効果を見極めます。

コントラスト

コントラストのレベル

 デフォルトの設定はレベル7です。前述のレベルの総数を決めるスライダーを使って数字を増やすことも減らすことも可能です。

 備考:レベル数を下げると、RAMの使用量と処理時間が減りますが、その場合、取り除かれるディテールが少ないので、残差画像は元画像と近いものになります。

 “コントラスト+”や“コントラスト-”のボタンを使えば、各コントラストレベルの効果を漸増(減)させることが簡単に行えます。つまり、このボタン操作では、細かいレベル程増減が大きく、高いレベル程増減が小さくなります。しかし、高いレベルだけを更に調整したい場合もあるでしょう、例えば、細かいレベルのコントラストを増やす一方で、高いレベルでは逆にコントラストを下げたいような場合です。

 各コントラストレベルは、詳細レベルのスケールに準じています。但し、コントラストスライダーによる効果は、調整を行う前にそのレベルにコントラストが存在していた場合だけです。仮にその部分が均一であった場合は、そのスライダーの効果はありません。

各レベルは以下の通りです:

  1. レベル 0: 2x2 ピクセル
  2. レベル 1: 4x4 ピクセル
  3. レベル 2: 8x8 ピクセル
  4. レベル 3: 16x16 ピクセル
  5. レベル 4: 32x32 ピクセル
  6. レベル 5: 64x64 ピクセル
  7. レベル 6: 128x128 ピクセル
  8. レベル 7: 256x256 ピクセル
  9. レベル 8: 512x512 ピクセル
  10. エキストラ: 1024x1024 ピクセル

 前述の“詳細レベルの総数”で説明したように、効果を目で確認するためには、プレビュー画像の大きさが、目的の詳細レベルの大きさと同等、或いはそれ以上必要であることを覚えておいて下さい。

 残差画像は詳細レベルの画像とは違いますので、上記の一覧の中にはありません。残差画像は、元画像から各詳細レベルのディテールが取り除かれた画像のことです。

 コントラストレベルの調整に特段変わったものはありません。直接的な調整です。強いて挙げるなら、ハイライトやシャドウ部分だけに適用、というような限定使用です。以下に説明する色度に関しても同じです。

適用

 このモジュールは、スライダーの効果を輝度の範囲で限定させるものです。例えば、輝度の高い部分だけ細部のコントラストを変えるとか、輝度の低い部分だけは、粗い部分のコントラストを下げる、というような設定です。

全輝度範囲

 “全輝度範囲”を選ぶと、ハイライト、中間、シャドウといった輝度に関わらず、各スライダーが同じ作用をします。

シャドウ/ハイライト

 “シャドウ/ハイライト”を選ぶと、目標とする部分の調整を行うため、新たなスライダーが表示されます:

  • シャドウの輝度範囲
  • 暗くする効果を何処までのレベルに与えるか設定します。貴方が使っているレベルが0以上であっても、設定は常に“レベル0”から数えた数字で行います。
  • ハイライトの輝度範囲
  • 明るくする効果を何処までのレベルに与えるか設定します。貴方が使っているレベルが8以下であっても、設定は常に“レベル8”から数えた数字で行います。

 例えば、貴方が詳細レベルの数を7にしていたとします。この場合、使用する最も高い詳細レベルは“レベル6”です(0から数えるため)。ここで、貴方が“レベル6”だけ暗くする効果を与え、レベル0と1には明るくする効果を与えたいと、考えたとします。その場合は、シャドウレベルのスライダーを3に、ハイライトレベルのスライダーを2にします。

 これら2つのアジャスターにより設定された以外のレベルに対する調整は、輝度の範囲全体に均等に働きます。

色度

 このモジュールの構成はコントラストのモジュールと似ています。3つの選択肢があります:

  1. 全色度:各詳細レベルで、そのコントラストレベルと関係なく、全ての色度が影響を受けます。
  2. 明清色(パステルカラー)/純色:コントラストレベルに関係なく、色度を明清色と純色に分けた2つの範囲で調整出来ます。
  3. コントラストレベルにリンクさせる:色度の調整がコントラストにも直接的に影響します。

全ての色度

 “全色度”を選ぶと、色度の強弱に関係なく、その詳細レベルの全色度が調整の影響を受けます。

 色度は(a*の二乗 + b*の二乗)の平方根で求められますが、計算値の範囲が広いため、プログラムの動作・効率を考え、敢えてその範囲を0~140に限定しました。それでも全てのケースに十分対応できます。

色度のカーブ:

  • X軸は詳細レベルを表しています。左端が最も細かいレベル、右端が最も粗いレベルです。つまり、X軸の数字は連続していません、不連続です。垂直に表示されているのは、X軸の値に合わせた9つの参考ポイントです。もし、貴方が9以下の詳細レベル数、例えば7を使っていたとすると、右2つのポイントは無視されます。
  • Y軸は各レベルの効力を示しています。カーブが中心線より上にある場合、影響を受ける詳細レベルの色度が増加します。下であれば、その逆です。

 コントラストの場合と同様、特定のレベルの色度の調整は、調整前にその詳細レベルに色度の違いが存在する場合だけです。仮にそのレベルの部分の色度が均一であれば、調整の効果はありません。

明清色(パステルカラー)/純色

 色度は次の3つの方法で調整出来ます:

  1. 全色度‐色度の強弱に関係なく、色度全体で均等に作用します(Y軸)
  2. 明清色/純色‐明清色/純色のしきい値に応じて色度の範囲を限定します。デフォルトの設定は5になっていますので、純色トーンの調整は最初の5レベルまでに限定され、明清色トーンの調整はその他のレベルに限定されます。
  3. コントラストレベルとリンク‐元画像の色度の範囲で、色度の調整がコントラストレベルの調整に比例します。この比例配分は“クロマリンク”のスライダーで調整します:0は色度に影響しません。100で最大効果となります。

トーンの分離

 これは“部分的なカラーシフト(トーン)”を可能にする機能ですが、機能名称は改めた方がいいかもしれません。

 ウェーブレット変換により、色データがa*とb*に分解されてしまっているので、各レベルの色相を直接的に調整することは出来ません。また、特定の色相と分解された色チャンネルを数学的に関連付けて正確に対応させることも殆ど不可能です。

 しかし、敢えて先の色度のカーブと同じ原理で2つのカーブを用意しました。X軸は0~8のレベルを不連続で表し、Y軸は中心線より上が効果を高めるポジション、下が効果を弱めるポジションです:

  • a*カーブはレッド/グリーンのトーンに影響します。
  • b*カーブはブルー/イエローのトーンに影響します。

 備考:a*とb*で全く同じ調整を行うと、最終的な効果は色度のカーブによる調整と同じになります。

エッジのシャープ化

 これは、RawTherapeeに既に備わっている、アンシャープマスクやRLデコンボリューション、エッジなどのシャープ化機能に追加的に設けられた機能です。原理はウェーブレット変換による画像の分解をベースにしています。ウェーブレット変換はマスクと似ているとも言える残差画像を生成するので、アンシャープマスクと効果が多少似ていると思われるかもしれません。しかし、似ているのはその点までです。RawTherapeeが使っているウェーブレット変換のドブシー関数は、各レベルの詳細を解析し、直接的に輪郭を認識するように働いているからです。最初のレベル0では、“半径”約2ピクセルのディテールに対し、2ピクセル毎の解析を行い、次のレベルでは4ピクセルの“半径”を解析する、といった具合です。

ここはまだ編集中です

ここはまだ編集中です

ここはまだ編集中です

色域の抑制

青空のアーティファクトを軽減

 青空のような対象を撮影した場合、デジタル画像では、しばしばまだら模様のノイズが発生します。ウェーブレット変換は、細部のコントラストを増やすことに使えますが、この特性が小さなアーティファクトを発生させたり、増幅したりすることがあります。このチェックボックスを有効にすれば、メディアンフィルターを使って、その様なアーティファクトを軽減します。

 ツールチェーンパイプラインの上流に位置する、類似した効果を持つノイズ低減機能の利用もお忘れなく。

色相の目標/保護

 この機能はウェーブレット変換によるコントラスト調整と色度調整にリンクしています。カラートーンは影響を受けません。スライダーを左に動かすと、効果は特定の色相範囲に留まり、右に動かすと広い色相範囲に効果が現れます。

 スライダーの下にあるしきい値セレクターで、特定の色相を目標(或いは、保護)に選びます。デフォルトでは、肌色の色相が設定されています。選択範囲はL*a*b*色空間の中です。

色ずれを回避

 作業色空間を考慮し、レンダリングインテントに合わせるため、再変換した画像の色や輝度に適用します。

残差画像

 説明に入る前に残差画像のポイントを思い出して下さい:

  • ここはまだ編集中です
  • 残差画像とは、元画像から詳細レベルに分解した画像データの合計を引いたものです(個々の詳細レベルで行った調整は残差画像には影響しません)。
  • より多くの詳細レベルに分解されるほど、残差画像は元画像と違った映りになります。

 残差画像の調整は、ウェーブレット変換を使う処理の中で特筆すべき効用の一つです。これにより:

  1. ディテールのシャドウとハイライトを別々に調整出来ます。
  2. コントラスト(及び、色度)を減らすことで、マイクロコントラストの仕上がりが向上します。
  3. 詳細レベルの過剰な作用に起因するアーティファクトの発生を抑えるために、色度を変えることが出来ます。
  4. など

残差画像のシャドウ/ハイライト

 シャドウとハイライトのスライダーを右に動かすと、これら部分の輝度が増え、左に動かすと減ります。この作用は、露光補正タブの中にある“シャドウ/ハイライト”機能に似ていますが、ハイライト復元の作用に影響はありません。

 これらスライダーの作用は、次の2つのしきい値スライダーに影響を受けます:

  1. シャドウしきい値:デフォルトではL*スケール(0~100)が30に設定されており、30或いはそれ以下の輝度部分がシャドウスライダーの影響を受けます。
  2. ハイライトしきい値:デフォルトではL*スケール(0~100)が70に設定されており、70或いはそれ以上の輝度部分がハイライトスライダーの影響を受けます。

 どのしきい値を使うのが適当かどうかは、ナビゲーターパネルのL*値を参考にして判断します。

 シャドウ/ハイライトのアジャスターは次の様なケースで使えます:

  1. 明るい部分を対象に、輝きを増やす
  2. ハイライト部分で白飛びを避ける
  3. シャドウ部分を対象に、明るさを増やす
  4. など

残差画像のコントラスト

 これはウェーブレット変換を使う調整の中で特筆すべき効用の一つです。特徴のない残差画像(残差画像はディテールが取り除かれていることを思い出して下さい)のコントラストを変えることが出来るのです。その一方で、詳細レベルのコントラストは別途調整が出来るのです。例えば、残差画像のコントラストを適度に減らし、その分詳細レベルのコントラストを強くすることで、画像に深みと柔らか味を加えることが出来ます。

残差画像の色度

 上記のコントラストと同じ原理が色度のスライダーでも使えますが、色相スライダーと色相の目標/保護スライダーの併用による、選択的な色の調整が可能なだけではありません。デフォルトでは、典型的な青空の色相が設定されていますが、例えば、花の色や肌の色など好みの色を調整出来ます。色相の目標/保護スライダーで、特定した色相範囲で色度に変化を加えられます:

  1. スライダーを左に動かすと、色度の変更に対し、特定した色相だけが影響を受けます。例えば、緑草の色相を選択し、色度のスライダーを増やし、色相の目標/保護スライダーを左に動かすと残差画像の中の緑草の色度だけが増えます。
  2. スライダーを右に動かすと、色度の変更が色相セレクターで選んだ以外の色相全てに影響します。従って、上記と同じ例を使うと、色相の目標/保護スライダーを右に動かすことで、緑草の色相以外の色度が増えるのです。

 この調整機能は、肌色の彩度が不自然に強まること(例えば、人参色)を避けるのに大変有効です。