Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

imtile

複数のイメージ フレームを 1 つの四角形内の整列イメージとして結合

説明

out = imtile(filenames) は、filenames で指定されたイメージを含むタイル イメージを返します。filenames は n 行 1 列または 1 行 n 列の string 配列、文字ベクトル、または文字ベクトルの cell 配列です。ファイルが現在のフォルダーまたは MATLAB® パス上のフォルダーにない場合は、絶対パス名を指定します。詳細については、imread コマンドを参照してください。

既定では、imtile はイメージが四角形を構成するよう大まかに配置しますが、オプションのパラメーターでこの動作を変更することもできます。イメージごとにサイズや型が異なっていてもかまいません。

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

  • イメージ間でデータ型が一致しない場合、imtile は関数 im2double を使用して、すべてのイメージを double に再スケーリングします。

out = imtile(I) は、マルチフレーム イメージ配列 I のすべてのフレームを含むタイル イメージを返します。マルチフレーム イメージはバイナリ イメージ、グレースケール イメージ、またはトゥルーカラー イメージのいずれかのシーケンスです。

out = imtile(images) は、cell 配列 images で指定されたイメージを含むタイル イメージを返します。imtile は、空の cell 配列要素を空白のタイルとして表示します。

out = imtile(imds) は、ImageDatastore オブジェクト imds で指定したイメージを含むタイル イメージを返します。イメージ データ ストアの詳細については、ImageDatastore を参照してください。

out = imtile(X,map) は、X のすべてのグレースケール イメージをインデックス付きイメージとして扱い、指定したカラーマップ map をすべてのフレームに適用します。X は、グレースケール イメージの配列 (m x n x 1 x k)、ファイル名の string 配列、文字ベクトルの cell 配列のいずれかです。X がファイル名を表す場合、map はイメージ ファイル内にあるすべての内部カラーマップをオーバーライドします。

out = imtile(___,Name,Value) は、オプションのパラメーターの名前と値のペアの値に基づいて、カスタマイズされたタイル イメージを返します。パラメーター名は短縮できます。また、大文字と小文字は区別されません。

すべて折りたたむ

複数のイメージをファイルからワークスペースに読み込み、このイメージを含むタイル イメージを作成します。タイル イメージを表示します。

out = imtile({'peppers.png', 'ngc6543a.jpg'});
imshow(out);

Figure contains an axes. The axes contains an object of type image.

複数のイメージを含むデータセットを使用して、グリッド内でイメージを整列します。

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

load mri
out = imtile(D, map);
imshow(out);

Figure contains an axes. The axes contains an object of type image.

このデータセットのイメージのうち最初の 8 個のみを含むタイル イメージを作成します。'GridSize' パラメーターを使用して、イメージを 2 行 4 列のグリッドに配置します。

out = imtile(D, map, 'Frames', 1:8, 'GridSize', [2 4]);
figure;
imshow(out);

Figure contains an axes. The axes contains an object of type image.

RGB イメージをワークスペースに読み取ります。

imRGB = imread('peppers.png');

RGB イメージの 3 つの平面をそれぞれ含むタイル イメージを作成します。タイル イメージを表示します。

out = imtile(imRGB);
imshow(out)

Figure contains an axes. The axes contains an object of type image.

イメージ データ ストアから、カスタマイズされたタイル イメージを作成します。

指定したフォルダー内の、ファイル拡張子が 'tif' または 'png' であるすべてのファイルを含むイメージ データ ストアを作成します。

fileFolder = fullfile(matlabroot,'toolbox','matlab','imagesci');
imds = imageDatastore(fileFolder,'FileExtensions',{'.tif','.png'});

データ ストア内のイメージを含むタイル イメージを作成します。

out1 = imtile(imds);
imshow(out1);

Figure contains an axes. The axes contains an object of type image.

'BorderSize' および 'BackgroundColor' パラメーターを使用して、タイル イメージに青色の境界線を追加します。

out2 = imtile(imds, 'BorderSize', 10, 'BackgroundColor', 'b');
figure;
imshow(out2);

Figure contains an axes. The axes contains an object of type image.

入力引数

すべて折りたたむ

イメージが含まれるファイルの名前。n 行 1 列または 1 行 n 列の string 配列、文字ベクトル、または文字ベクトルの cell 配列として指定します。

マルチフレーム イメージ。バイナリ イメージ、グレースケール イメージ、トゥルーカラー イメージのシーケンスとして指定します。I は、m x n x k または m x n x 1 x k の配列、またはバイナリ イメージ、グレースケール イメージ、トゥルーカラー イメージのシーケンスとすることができます。バイナリ イメージまたはグレースケール イメージのシーケンスは、m x n x k または m x n x 1 x k の配列でなければなりません。トゥルーカラー イメージのシーケンスは、m x n x 3 x k の配列でなければなりません。

イメージのリスト。n 行 1 列または 1 行 n 列の、数値行列の cell 配列として指定します。この cell 配列には、m x n または m x n x 3 のサイズの数値行列を格納できます。

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

インデックス付きイメージと、関連付けられたカラーマップ。2 次元数値配列 (イメージ) と、double クラスの n 行 3 列の数値配列 (カラーマップ) として指定します。n はカラーマップ内の色の数です。

名前と値のペアの引数

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

例: tiled_image = imtile({'peppers.png', 'ngc6543a.jpg'},'BackgroundColor','g');

背景の色。'BackgroundColor' と MATLAB ColorSpec (Color Specification) で構成されるコンマ区切りのペアとして指定します。関数 imtile は、BorderSize で指定されたスペースを含むすべての空白スペースをこの色で塗りつぶします。背景色を指定すると、関数 imtile は出力を RGB イメージとしてレンダリングします。

例: 'green'

例: 'g'

例: [0 1 0]

各サムネイル イメージの周囲のパディング。'BorderSize' と、数値スカラーまたは [brows bcols] の形式の 1 行 2 列のベクトルで構成される、コンマ区切りのペアとして指定します。imtile は境界線を背景色でパディングします。

含めるフレーム。'Frames' と、数値配列または logical マスクで構成される、コンマ区切りのペアとして指定します。関数 imtile は、値をイメージ配列または cell 配列のインデックスとして解釈します。次の例では、最初の 3 つのイメージ フレームを含むタイル イメージが作成されます。

例: out = imtile(I,'Frames',1:3);

例: out = imtile(I,'Frames',[true true true]);

タイル イメージのサムネイルの行数と列数。'GridSize' と、[nrows ncols] の形式の 2 要素ベクトルで構成される、コンマ区切りのペアとして指定します。nrows はグリッドの行数を指定し、ncols はグリッドの列数を指定します。imtile でサイズを計算する際に、すべてのイメージが含まれるような特定の次元にするには、NaN または Inf を使用します。

  • 'GridSize'[2 NaN] の場合、imtile は、2 行と、すべてのイメージを含むために必要な数の列をもつタイル イメージを作成します。

  • どちらの要素も NaN または Inf の場合、imtile は正方形を形成するグリッド サイズを計算します。imtile はイメージを、列の方向に横方向で返します。

  • GridSize とイメージ (フレーム) の数が一致しない場合、imtileGridSize に基づいてタイル イメージを作成します。

サムネイルのサイズ。'ThumbnailSize'[trows tcols] の形式の 2 要素ベクトルで構成されるコンマ区切りのペアとして、ピクセル単位で指定します。関数 imtile は、境界線をゼロ パディングして、元のイメージの縦横比を維持します。

  • NaN または Inf を指定した場合、関数 imtile は、最初のイメージの縦横比が維持されるよう、対応する値を自動的に計算します。

  • 空の配列 ([]) を指定した場合、関数 imtile は最初のイメージのフル サイズをサムネイルのサイズとして使用します。

出力引数

すべて折りたたむ

整列した出力イメージ。数値配列として返されます。

参考

|

R2018b で導入