ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

localtonemap

局所的なコントラストを強調しながら HDR イメージを表示用にレンダリング

構文

rgb = localtonemap(hdr)
rgb = localtonemap(hdr,Name,Value,...)

説明

rgb = localtonemap(hdr) は、ハイ ダイナミック レンジ イメージ hdr を表示に適したそれより低いダイナミック レンジ イメージ rgb に変換します。localtonemap はトーン マッピングというプロセスを、局所的なコントラストを保持しながら使用します。

rgb = localtonemap(hdr,Name,Value,...) は、トーン マッピングを実行します。トーン マッピングでは、パラメーターが操作のさまざまな側面を制御します。パラメーター名には省略形を使用できます。

すべて折りたたむ

ハイ ダイナミック レンジ イメージを読み込みます。

HDR = hdrread('office.hdr');

ダイナミック レンジ圧縮の量を小さくして局所トーン マッピングを適用します。

RGB = localtonemap(HDR, 'RangeCompression', 0.1);

結果のトーン マッピングされたイメージを表示します。

imshow(RGB)

操作を繰り返します。ただし、今回はイメージの細部を強調します。

RGB = localtonemap(HDR, ...
                  'RangeCompression', 0.1, ...
                  'EnhanceContrast', 0.5);

細部を増やしてトーン マッピングされた結果のイメージを表示します。

imshow(RGB)

入力引数

すべて折りたたむ

ハイ ダイナミック レンジ イメージ。mn 列または m x n x 3 の single クラスの実数非スパース行列として指定します。

データ型: single

名前/値のペアの引数

オプションの Name,Value 引数のペアをコンマ区切りで指定します。ここで、Name は引数名で、Value は対応する値です。Name は単一引用符 (' ') で囲まなければなりません。Name1,Value1,...,NameN,ValueN のように、複数の名前と値のペアの引数を任意の順番で指定できます。

例:

すべて折りたたむ

HDR イメージのダイナミック レンジに適用される圧縮の量。範囲 [0,1] の数値スカラーとして指定します。

説明
0最小の圧縮。中間の 99% の強度をダイナミック レンジ 100:1 に再マッピングした後、指数 1/2.2 のガンマ補正を加えるのみになります。
1最大の圧縮。局所ラプラシアン フィルター処理を使用します。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

適用される局所的なコントラスト強調の量。数値スカラーとして指定します。範囲 [0,1] の値でなければなりません。

説明
0イメージをそのまま保持
1最大の局所的なコントラスト強調

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

出力引数

すべて折りたたむ

トーン マッピングされたイメージ。RGB イメージとして返されます。

アルゴリズム

localtonemap は対数空間で局所ラプラシアン フィルター処理を使用し、局所的なコントラストを保持または強調しながら HDR のダイナミック レンジを圧縮します。その際、出力イメージの外観が一致するように、圧縮イメージの 99% の中間の強度を 100:1 の固定ダイナミック レンジに再マッピングします。その後、localtonemap はガンマ補正を適用して表示用の最終イメージを生成します。

R2016b で導入

この情報は役に立ちましたか?