ドキュメンテーション

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

imshow

説明

imshow(I) はグレースケール イメージ I を図に表示します。imshow はイメージのデータ型に既定の表示範囲を使用し、イメージの表示のため、figure、axes および image オブジェクトのプロパティを最適化します。

imshow(I,[low high]) は、表示範囲を 2 要素ベクトル [low high] として指定して、グレースケール イメージ I を表示します。詳細は、DisplayRange パラメーターを参照してください。

imshow(I,[]) はグレースケール イメージ I を、ピクセル値 I の範囲に基づいて表示をスケーリングして表示します。imshow[min(I(:)) max(I(:))] を表示範囲として使用します。imshowI の最小値を黒、最大値を白として表示します。詳細は、DisplayRange パラメーターを参照してください。

imshow(RGB) はトゥルーカラー イメージ RGB を図に表示します。

imshow(BW) はバイナリ イメージ BW を図に表示します。バイナリ イメージの場合、imshow は値 0 (ゼロ) を黒とし、1 を白としてピクセルを表示します。

imshow(X,map) は、カラーマップ map をもつインデックス付きイメージ X を表示します。カラーマップ行列は、任意の行数をもつことができますが、列は 3 列でなければなりません。各行は、1 番目の要素が赤の強度を指定し、2 番目の要素が緑を指定し、3 番目の要素が青を指定する色として解釈されます。色の強度は、[0, 1] の範囲で指定できます。

imshow(filename) は、filename で指定されたグラフィックス ファイルに保存されたイメージを表示します。

imshow(___,Name,Value) は、名前と値のペアを使用して演算を制御し、イメージを表示します。

himage = imshow(___) は、imshow によって作成された image オブジェクトを返します。

すべて折りたたむ

imshow を使用して、グレースケール イメージ、RGB イメージ (トゥルーカラー)、インデックス付きイメージ、またはバイナリ イメージを表示します。MATLAB® には corn.tif という名前の、グレースケール イメージ、インデックス付きイメージ、およびトゥルーカラー (RGB) イメージの 3 つのイメージを含む TIF ファイルが含まれています。この例では、グレースケール イメージからバイナリ イメージを作成します。

グレースケール イメージの表示

corn.tif ファイルから MATLAB ワークスペースにグレースケール イメージを読み込みます。イメージのグレースケール バージョンはファイル内の 3 番目のイメージです。

corn_gray = imread('corn.tif',3);

imshow を使用してグレースケール イメージを表示します。

imshow(corn_gray)

インデックス付きイメージの表示

corn.tif ファイルから MATLAB ワークスペースにインデックス付きイメージを読み込みます。イメージのインデックス付きバージョンはファイル内の 1 番目のイメージです。

[corn_indexed,map] = imread('corn.tif',1);

imshow を使用して、インデックス付きイメージを表示します。

imshow(corn_indexed,map)

RGB イメージの表示

corn.tif ファイルから MATLAB ワークスペースに RGB イメージを読み込みます。イメージの RGB バージョンはファイル内の 2 番目のイメージです。

[corn_rgb] = imread('corn.tif',2);

imshow を使用して RGB イメージを表示します。

imshow(corn_rgb)

バイナリ イメージの表示

corn.tif ファイルから MATLAB ワークスペースにグレースケール イメージを読み込み、しきい値処理を使用してバイナリ イメージに変換します。イメージのグレースケール バージョンはファイル内の 3 番目のイメージです。

[corn_gray] = imread('corn.tif',3);

グレースケール イメージのピクセルの平均値を決定します。

meanIntensity = mean(corn_gray(:));

平均の強度値をしきい値として使用して、しきい値処理によってバイナリ イメージを作成します。

corn_binary = corn_gray > meanIntensity;

imshow を使用してバイナリ イメージを表示します。

imshow(corn_binary)

ファイルに保存されているイメージを表示します。

imshow('peppers.png');

サンプルのインデックス付きイメージ corn.tif をワークスペースに読み取って表示します。

[X,map] = imread('corn.tif');
imshow(X,map)

関数 colormap を使用し、ターゲット座標軸を最初の入力引数として指定して、イメージのカラーマップを変更します。赤の成分のない元のカラーマップを使用します。

newmap = map;
newmap(:,1) = 0;
colormap(gca,newmap)

入力引数

すべて折りたたむ

入力のグレースケール イメージ。行列として指定します。グレースケール イメージは任意の数値データ型にできます。

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

入力のトゥルーカラー イメージ。m x n x 3 の配列として指定します。

データ型 single または double のトゥルーカラー イメージを指定する場合、値は範囲 [0, 1] 内でなければなりません。ピクセル値がこの範囲外である場合は、関数 rescale を使用してピクセル値を範囲 [0, 1] にスケーリングできます。引数 'DisplayRange' は、入力イメージがトゥルーカラーである場合は影響はありません。

データ型: single | double | uint8 | uint16

入力のバイナリ イメージ。行列として指定します。

データ型: logical

インデックス付きイメージ。実数値の 2 次元配列として指定します。X の値は map で指定するカラーマップのインデックスです。

データ型: single | double | uint8 | logical

カラーマップ。[0 1] の範囲の single 型または double 型の c 行 3 列の配列または uint8 型の c 行 3 列の配列として指定します。各行が RGB カラーの値を指定します。

データ型: single | double | uint8

ファイル名。文字ベクトルとして指定します。イメージは imread によって読み取り可能でなければなりません。関数 imshow はイメージを表示しますが、イメージ データを MATLAB® ワークスペース内に保存しません。ファイルに複数のイメージが含まれている場合、imshow はファイルの最初のイメージを表示します。

例: imshow('peppers.png')

データ型: char

グレースケール イメージの表示範囲。2 要素ベクトルとして指定します。詳細については、名前と値のペアの引数 'DisplayRange' を参照してください。

例: [50 250]

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

名前と値のペアの引数

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

例: imshow('board.tif','Border','tight')

Figure ウィンドウの境界スペース。'Border''tight' または 'loose' で構成されるコンマ区切りのペアとして指定します。'loose' に設定した場合、Figure ウィンドウ内のイメージの周囲にスペースが追加されます。'tight' に設定した場合、Figure ウィンドウ内のイメージの周囲にスペースは追加されません。

イメージが非常に小さい場合または Figure のイメージおよびその座標軸の近くに他のオブジェクトがある場合、imshow はこのパラメーターの設定内容にかかわらず、境界スペースを使用する場合があります。

例: imshow('board.tif','Border','tight')

データ型: char

カラーマップ。'Colormap' と c 行 3 列の行列で構成されるコンマ区切りのペアとして指定します。imshow はこれを使用して座標軸のカラーマップを設定します。疑似色でグレースケール イメージを表示するには、このパラメーターを使用してください。空のカラーマップ ([]) を指定すると、imshow はこのパラメーターを無視します。

メモ

R2016b 以降では、imshow は Figure ではなくイメージを含む座標軸のカラーマップを変更します。

例: newmap = copper; imshow('board.tif','Colormap',newmap)

データ型: double

グレースケール イメージの表示範囲。[low high] の形式の 2 要素ベクトルとして指定します。関数 imshow は、値 low (および low よりも小さいすべての値) を黒で、値 high (および high よりも大きいすべての値) を白で表示します。lowhigh の間の値は、既定数のグレー レベルを使用して、中間のグレー階調で表示されます。

空行列 ([]) を指定すると、imshow[min(I(:)) max(I(:))] の表示範囲を使用します。言い換えれば、I の最小値が黒の場合、最大値は白になります。

表示範囲を指定しない場合、imshow はイメージ データ型に基づいて既定の表示範囲を選択します。

  • I が整数データ型の場合、'DisplayRange' の既定の設定は、その整数クラスの表現可能な値の最小値または最大値になります。たとえば、uint16 配列の既定の表示範囲が [0, 65535] であるとします。

  • Isingle データ型または double データ型である場合、既定の表示範囲は [0, 1] になります。

メモ

ファイル名でイメージを指定する場合を除いて、パラメーター名の入力はオプションです。構文 imshow(I,[low high]) は、imshow(I,'DisplayRange',[low high]) と等価です。imshow をファイル名とともに呼び出す場合は、'DisplayRange' パラメーターを指定しなければなりません。

例: h = imshow(I,'DisplayRange',[0 80]);

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

イメージ表示の初期倍率。'InitialMagnification' と数値スカラーまたは 'fit' で構成されるコンマ区切りのペアとして指定します。100 に設定すると、imshow は、100% の倍率 (イメージ ピクセルごとに 1 つのスクリーン ピクセル) でイメージを表示します。'fit' に設定すると、imshow はイメージ全体をウィンドウに合わせてスケーリングします。

最初に、imshow はイメージ全体を指定された倍率で表示しようとします。倍率の値が、イメージをスクリーン上に表示するには大きすぎる場合、imshow はスクリーンに収まる最も大きな倍率でイメージを表示します。

'WindowStyle' プロパティが 'docked' に設定されている Figure にイメージが表示される場合、imshow は Figure に収まる最大の倍率でイメージを表示します。

メモ: 座標軸の位置を指定すると (subplot または axes を使用)、imshow は、指定されている初期の倍率を無視し、'fit' の動作を既定の動作にします。

imshow'Reduce' パラメーターとともに使用する場合、初期倍率は 'fit' でなければなりません。

MATLAB Online™ では、'InitialMagnification''fit' に設定されており、変更はできません。

例: h = imshow(I,'InitialMagnification','fit');

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

image オブジェクトの親の座標軸。'Parent' と axes オブジェクトで構成されるコンマ区切りのペアとして指定します。名前と値の引数 'Parent' を使用して、Figure および座標軸のプロパティの制御を可能にする UI を作成します。

イメージのサブサンプリングのインジケーター。'Reduce'truefalse1 または 0 のいずれかで構成されるコンマ区切りのペアとして指定します。この引数は TIFF ファイルの名前とともに使用する場合にのみ有効です。非常に大きなイメージの概要を表示するために、引数 Reduce を使用します。

データ型: logical

既定以外の座標系の X 軸の範囲。'XData' と 2 要素ベクトルで構成されるコンマ区切りのペアとして指定します。この引数は、イメージ XData を指定することにより、既定ではない空間座標系を設定します。値には 3 つ以上の要素を指定できますが、imshow は最初と最後の要素しか使用しません。

例: 'XData',[100 200]

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

既定以外の座標系の Y 軸の範囲。'YData' と 2 要素ベクトルで構成されるコンマ区切りのペアとして指定します。値には 3 つ以上の要素を指定できますが、imshow は最初と最後の要素しか使用しません。

例: 'YData',[100 200]

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

出力引数

すべて折りたたむ

imshow によって作成されたイメージ。image オブジェクトとして指定します。

ヒント

  • イメージを作成した後にカラーマップを変更するには、colormap コマンドを使用します。イメージを含む座標軸を最初の入力引数として指定し、目的のカラーマップを 2 番目の入力引数として指定します。例については、表示されたイメージのカラーマップの変更を参照してください。

  • 関数 imshow と関数 subplot を使用して、異なるカラーマップをもつ複数のイメージを同じ Figure に表示できます。

  • Image Processing Toolbox™ をお持ちの場合、イメージの表示や一般的な画像処理タスクの実行のための統合環境としてイメージ ビューアー アプリを使用できます。

  • Image Processing Toolbox をお持ちの場合、imshow の動作を変更するツールボックスの設定を、関数 iptsetpref を使用して設定できます。

  • MATLAB を -nojvm オプションで開始した場合、関数 imshow はサポートされません。

拡張機能

R2006a より前に導入