Main Content

montage

複数のイメージ フレームを四角形モンタージュとして表示

説明

montage(I) はマルチフレーム イメージ配列 I のすべてのフレームを表示します。既定では、関数 montage は概ね正方形になるようにイメージを配置します。

montage(imagelist) は、cell 配列 imagelist で指定されたイメージのモンタージュを表示します。イメージは、タイプとサイズが異なる場合があります。

montage(filenames) は、filenames でファイル名が指定されたイメージのモンタージュを表示します。

montage(imds) は、イメージ データストア imds で指定されたイメージのモンタージュを表示します。

montage(___,map) は、すべてのグレースケール イメージとバイナリ イメージ (前述のいずれかの構文を使用して指定) をインデックス付きイメージとして扱い、指定されたカラーマップ map を使用してそれらのイメージを表示します。ファイル名またはイメージ データストアを使用してイメージを指定する場合、map はイメージ ファイルに存在する任意の内部カラーマップをオーバーライドします。montage は RGB イメージのカラーマップを変更しません。

montage(___,Name,Value) は、名前と値のペアの引数を使用してイメージ モンタージュの表示をカスタマイズします。

img = montage(___) は、表示されたすべてのフレームを含む単一のイメージ オブジェクトのハンドルを返します。

メモ

Medical Imaging Toolbox™ は関数 montage (Image Processing Toolbox™) の機能を拡張し、medicalImage (Medical Imaging Toolbox) オブジェクトまたは medicalVolume (Medical Imaging Toolbox) オブジェクトのデータを表示します。詳細については、montage (Medical Imaging Toolbox) を参照してください。

すべて折りたたむ

MRI データセットを読み込みます。

load mristack

データセットを表示します。montage はデータをマルチフレーム イメージとして扱い、各スライスを表示します。

montage(mristack)

タイプとサイズが異なる複数のイメージをワークスペースに読み取ります。

imRGB = imread("peppers.png");
imGray = imread("coins.png");

すべてのイメージを含むモンタージュを表示します。

figure
montage({imRGB,imGray,"cameraman.tif"})

ファイルの一連のイメージからモンタージュを作成します。モンタージュを 2 行 5 列の四角形にします。次に、2 番目のモンタージュを作成します。ここでは名前と値の引数 "DisplayRange" を使用してイメージ内の構造を強調表示します。

イメージの矩形モンタージュとしての表示

一連のファイル名を含む string 配列を作成します。

fileFolder = fullfile(matlabroot,"toolbox","images","imdata");
dirOutput = dir(fullfile(fileFolder,"AT3_1m4_*.tif"));
fileNames = string({dirOutput.name});

イメージをモンタージュとして表示します。モンタージュの形状を 2 行 5 列の四角形に指定します。

montage(fileNames,"Size",[2 5]);

モンタージュでのイメージのコントラストの調整

別の Figure に、同じ 2 行 5 列のモンタージュを作成します。さらに、表示範囲を指定し、モンタージュのイメージのコントラストを調整します。

figure 
montage(fileNames,"Size",[2 5],"DisplayRange",[75 200]);

既定の設定のモンタージュを使用して MRI データ セットのすべてのイメージを表示します。このセットには 27 個のイメージがあります。

load mri
montage(D,map)

最初の 9 個のイメージのみを含む新しいモンタージュを作成します。

figure
montage(D,map,Indices=1:9);

Image Processing Toolbox™ サンプル イメージ フォルダーから一連の 10 個のイメージを含む ImageDatastore オブジェクトを作成します。

fileFolder = fullfile(matlabroot,"toolbox","images","imdata");
imds = imageDatastore(fullfile(fileFolder,"AT3*"));

データストアの内容をモンタージュとして表示します。

montage(imds)

入力引数

すべて折りたたむ

マルチフレーム イメージ配列。次のいずれかに指定します。

  • k 個のバイナリ イメージまたはグレースケール イメージのシーケンスを表す m x n x k の数値配列

  • k 個のバイナリ イメージまたはグレースケール イメージのシーケンスを表す m x n x 1 x k の数値配列

  • k 個のトゥルーカラー イメージのシーケンスを表す m x n x 3 x k の数値配列

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

一連のイメージ。サイズが m 行 n 列または m x n x 3 の数値行列の cell 配列として指定します。

データ型: single | double | int16 | uint8 | uint16 | logical | cell

イメージを含むファイルの名前。文字ベクトルの cell 配列または string のベクトルとして指定します。ファイルが現在のフォルダーまたは MATLAB® パス上のフォルダーにない場合は、絶対パス名を指定します。詳細については、imread を参照してください。

データ型: char | string | cell

イメージ データストア。ImageDatastore オブジェクトとして指定します。

カラーマップ。範囲 [0, 1] の値をもつ c 行 3 列の数値行列として指定します。各行は、カラーマップの単一色を構成する赤、緑、青の成分を指定する 3 要素の RGB 3 成分です。

データ型: double

名前と値の引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。

R2021a より前では、コンマを使用して名前と値をそれぞれ区切り、Name を引用符で囲みます。

例: 'Indices',1:9 は、最初の 9 フレームのモンタージュを作成します。

背景色。RGB 3 成分、色の名前、または色の省略名として指定します。関数 montage は、BorderSize で指定された空間も含め、すべての空白を背景色で塗りつぶします。背景色を指定する場合、関数 montage は出力を RGB イメージとしてレンダリングします。

RGB 3 成分を使用すると、任意の色を指定できます。RGB 3 成分は、色の赤、緑、青の成分の強度を指定する 3 つの要素から成る行ベクトルです。強度は [0, 1] の範囲でなければなりません。

いくつかの一般的な色については、色の名前を string スカラーまたは文字ベクトルとして指定できます。次の表に、名前付きの色のオプション、およびそれと等価な RGB 3 成分を示します。

色の名前省略名RGB 3 成分外観
"red""r"[1 0 0]

A rectangle colored pure red

"green""g"[0 1 0]

A rectangle colored pure green

"blue""b"[0 0 1]

A rectangle colored pure blue

"cyan" "c"[0 1 1]

A rectangle colored pure cyan

"magenta""m"[1 0 1]

A rectangle colored pure magenta

"yellow""y"[1 1 0]

A rectangle colored pure yellow

"black""k"[0 0 0]

A rectangle colored black

"white""w"[1 1 1]

A rectangle colored white

以下に、MATLAB がさまざまなタイプのプロットで使用する既定の色の RGB 3 成分を示します。

RGB 3 成分外観
[0 0.4470 0.7410]

A rectangle colored medium blue

[0.8500 0.3250 0.0980]

A rectangle colored reddish-orange

[0.9290 0.6940 0.1250]

A rectangle colored dark yellow

[0.4940 0.1840 0.5560]

A rectangle colored dark purple

[0.4660 0.6740 0.1880]

A rectangle colored light green

[0.3010 0.7450 0.9330]

A rectangle colored light blue

[0.6350 0.0780 0.1840]

A rectangle colored dark red

例: "BackgroundColor","r"

例: "BackgroundColor","green"

例: "BackgroundColor",[0 0.4470 0.7410]

各サムネイル イメージの周りのパディング (ピクセル単位)。非負の整数、または非負の整数から成る 1 行 2 列のベクトルとして指定します。関数 montage はイメージの境界を背景色 BackgroundColor でパディングします。

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

配列 I のグレースケール イメージの表示範囲。[low high] 形式の 1 行 2 列のベクトルとして指定します。low 以下のすべてのピクセル値は、黒で表示されます。high 以上のすべてのピクセル値は、白で表示されます。空の行列 ([]) を指定すると、montage は、イメージの最小ピクセル値と最大ピクセル値を使用します。

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

モンタージュに表示するフレーム。正の整数の配列として指定します。関数 montage は、この値を、配列 I へのインデックス、または cell 配列 filenamesimagelist へのインデックスとして解釈します。

既定では、関数 montage はすべてのフレームまたはイメージ ファイルを表示します。

例: "Indices",1:4 は、I 内の最初の 4 フレームのモンタージュを作成します。

例: "Indices",1:2:20 はフレームを 1 つおきに表示します。

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

イメージのスケーリング時に使用する内挿手法。次のいずれかの値を指定します。

説明
"nearest"最近傍内挿 (既定の設定)
"bilinear"双一次内挿

montage によって作成される image オブジェクトの親。axes オブジェクトとして指定します。関数 montage はイメージのサイズを変更して、親の座標軸で利用できる範囲に当てはめます。

イメージの行数と列数。[nrows ncols] 形式の 2 要素ベクトルとして指定します。

特定の次元に NaN または Inf を指定した場合、関数 montage は、すべてのイメージがモンタージュに表示されるように次元の値を計算します。たとえば、Size[2 NaN] の場合、モンタージュの行数は 2 行になり、列数はすべてのイメージが表示される最小の列数になります。指定されたイメージ (フレーム) の数と Size の間に不一致がある場合、関数 montage は、Size に基づいてタイル配置されたイメージを作成します。

データ型: single | double

各サムネイルのサイズ (ピクセル単位)。正の整数の 2 要素ベクトルとして指定します。各イメージの縦横比は維持され、空白は背景色 BackgroundColor で塗りつぶされます。

空の配列 ([]) を指定した場合、サムネイルのサイズは 1 番目のイメージのフル サイズとなります。いずれかの要素を NaN または Inf として指定すると、関数 montage は、対応する値を自動的に計算して、1 番目のイメージの縦横比を維持します。

データ型: single | double

出力引数

すべて折りたたむ

モンタージュ イメージ。Image オブジェクトとして返されます。

ヒント

  • インデックス付きイメージを指定した場合、montage は、ファイルにあるカラーマップを使用して RGB に変換します。

  • イメージの間でデータ型の不一致がある場合、関数 montage は、関数 im2double を使用してすべてのイメージをデータ型 double に変換します。

  • montage は、横方向および縦方向に表示するイメージの数を計算するときに、表示されるモンタージュがほぼ正方形になるようにイメージの縦横比を考慮に入れます。

  • ライブ エディターでは Figure のタイトルが途切れて表示されることがあります。タイトル全体が表示されるようにするには、親座標軸オブジェクトの PositionContraint プロパティを "outerposition" に設定します。プロパティ値は、関数 montage より後、関数 title より前に更新します。

    I = imread("peppers.png");
    montage({I,I})
    ax = gca;
    ax.PositionConstraint = "outerposition";
    title("Peppers");
    名前と値の引数 Parent を使用して親座標軸を指定する場合は、指定した親座標軸オブジェクトの PositionConstraint プロパティを設定します。座標軸位置のプロパティの詳細については、座標軸のレイアウトの制御を参照してください。

バージョン履歴

R2006a より前に導入