ドキュメンテーション

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

イメージを Figure ウィンドウに表示

概要

イメージ データを表示するには、関数 imshow を使用します。次の例では、イメージを MATLAB® ワークスペースに読み取り、MATLAB の Figure ウィンドウに表示します。

moon = imread('moon.tif');
imshow(moon);

関数 imshow により、以下に示すように MATLAB Figure ウィンドウにイメージが表示されます。

また、imshow にイメージを含むファイルの名前を渡すこともできます。

imshow('moon.tif');

次の構文は、複数のイメージをスキャンするために役立ちます。ただし、この構文を使用する場合、imread は MATLAB ワークスペースにイメージ データを保存しないことに注意してください。ワークスペースにイメージを取り込むには、現在の image オブジェクトからイメージ データを取得する関数 getimage を使用しなければなりません。この例では、対象の Figure ウィンドウが現在アクティブな場合に、moon.tif のイメージ データを変数 moon に割り当てます。

moon = getimage;

imshow を使用して、ツールボックスでサポートされるさまざまなイメージ タイプを表示する方法の詳細は、さまざまなイメージ タイプの表示を参照してください。

イメージの初期倍率の指定

既定の設定では、imshow は、100% の倍率 (イメージ ピクセルごとに 1 つのスクリーン ピクセル) でイメージ全体を表示しようとします。ただし、イメージが大きすぎて 100% の倍率では画面上の Figure ウィンドウに収まらない場合、imshow は、画面に収まるようにイメージをスケールし、警告メッセージを発行します。

imshow の特定の呼び出しで、既定の初期倍率の動作をオーバーライドするには、InitialMagnification パラメーターを指定します。たとえば、150% の倍率でイメージを表示するには、次のコードを使用します。

pout = imread('pout.tif');
imshow(pout, 'InitialMagnification', 150)

imshow は、指定した倍率を守ろうとします。ただし、その倍率ではイメージが画面に収まらない場合、imshow は画面に合わせてイメージをスケールします。また、初期倍率の値として 'fit' を指定することもできます。その場合、imshow は Figure ウィンドウの現在のサイズに合わせてイメージをスケールします。

imshow の既定の初期倍率の動作を変更するには、ImshowInitialMagnification ツールボックスを設定します。設定を行うには、iptprefs を呼び出すか、MATLAB デスクトップの [ファイル] メニューから [設定] を選択して Image Processing Toolbox™ の [設定] ダイアログ ボックスを開きます。

imshow はイメージをスケールするときに、内挿を使用して、イメージ行列内の要素とは直接対応しないスクリーン ピクセルの値を決定します。内挿法の指定の詳細については、関数 imresize を使用したイメージのサイズ変更を参照してください。

Figure の外観の制御

既定の設定では、imshow は Figure にイメージを表示する際、グレーの境界線でイメージを囲みます。次の例に示したように、'border' パラメーターを使用すると、この既定の設定を変更して境界線を非表示にすることができます。

imshow('moon.tif','Border','tight')

次の図は、同じイメージに境界線を加えた場合と加えていない場合を示しています。

'border' パラメーターは、imshow の呼び出しで表示されるイメージのみに影響します。imshow を使用して表示するすべてのイメージが、グレーの境界線なしで表示されるようにするには、Image Processing Toolbox 'ImshowBorder' 設定を 'tight' に設定します。さらに、設定を使用して可視化した軸を Figure に含めることもできます。設定の詳細は、iptprefs を参照してください。

関連するトピック