ドキュメンテーション

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

tonemap

表示のためのハイ ダイナミック レンジ イメージのレンダリング

構文

RGB = tonemap(HDR)
RGB = tonemap(HDR,Name,Value)

説明

RGB = tonemap(HDR) は、トーン マッピングというプロセスを使用して、ハイ ダイナミック レンジ イメージ HDR を表示に適したそれより低いダイナミック レンジ イメージ RGB に変換します。トーン マッピングは、より制限されたダイナミック レンジを使用する表示でハイ ダイナミック レンジ イメージの外観を近似する際に使用される手法です。

RGB = tonemap(HDR,Name,Value) は、パラメーターでトーン マッピングのさまざまな特性を制御できます。

すべて折りたたむ

この例では、HDR (ハイ ダイナミック レンジ) イメージを表示する方法を説明します。HDR イメージを表示するには、まずデータをコンピューターに正しく表示できるダイナミック レンジに変換しなければなりません。

hdrread を使用してハイ ダイナミック レンジ (HDR) イメージを読み取ります。HDR イメージを表示しようとしても正しく表示されないことに注目してください。

hdr_image = hdrread('office.hdr');
imshow(hdr_image)

関数 tonemap を使用してコンピューターで表示できるダイナミック レンジに HDR イメージを変換します。この関数は HDR イメージを uint8 クラスの RGB イメージに変換します。

rgb = tonemap(hdr_image);
whos
  Name             Size                  Bytes  Class     Attributes

  hdr_image      665x1000x3            7980000  single              
  rgb            665x1000x3            1995000  uint8               

RGB イメージを表示します。

imshow(rgb)

入力引数

すべて折りたたむ

ハイ ダイナミック レンジ イメージ。m x n x 3 の配列として指定します。

データ型: single | double

名前/値のペアの引数

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

例:

すべて折りたたむ

レンダリングされたイメージの全体的な明るさ。2 要素ベクトルとして指定します。ベクトルは [low high] の形式をとります。ここで、low および high は、(0, 1] を範囲とする、ロー ダイナミック レンジ イメージの輝度の値です。これらの値は imadjust に渡されます。

データ型: double

レンダリングされたイメージの色の飽和。正のスカラーとして指定します。値が 1 より大きい場合、色の飽和は大きくなります。値が範囲 (0, 1] である場合、色の飽和は小さくなります。

データ型: double

トーン マッピング操作の適応ヒストグラム均等化の実行中に使用されるタイル数。正の整数の 2 要素ベクトルとして指定します。ベクトルは [rows cols] の形式をとります。ここで、rows および cols はタイルの行数と列数を指定します。rowscols は両方とも少なくとも 2 でなければなりません。イメージ タイルの合計数は rows*cols と等しくなります。タイル数が多いと、局所的なコントラストが大きいイメージとなります。

データ型: double

出力引数

すべて折りたたむ

ロー ダイナミック レンジ イメージ。m x n x 3 の配列として指定します。

データ型: uint8

R2007b で導入

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