このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
imshow
イメージの表示
構文
説明
imshow(
はグレースケール イメージ I
)I
を図に表示します。imshow
はイメージのデータ型に既定の表示範囲を使用し、イメージの表示のため、figure、axes および image オブジェクトのプロパティを最適化します。
imshow(
は、表示範囲を 2 要素ベクトル I
,[low high]
)[low high]
として指定して、グレースケール イメージ I
を表示します。詳細については、DisplayRange
引数を参照してください。
imshow(
はグレースケール イメージ I
,[])I
を、ピクセル値 I
の範囲に基づいて表示をスケーリングして表示します。imshow
は [min(I(:)) max(I(:))]
を表示範囲として使用します。imshow
は I
の最小値を黒、最大値を白として表示します。詳細については、DisplayRange
引数を参照してください。
imshow(___,
は、名前と値のペアを使用して演算を制御し、イメージを表示します。 Name,Value
)
は、himage
= imshow(___)imshow
によって作成された image オブジェクトを返します。
例
グレースケール イメージ、RGB イメージ、インデックス付きイメージ、またはバイナリ イメージの表示
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)
ファイルからのイメージの表示
表示されたイメージのカラーマップの変更
サンプルのインデックス付きイメージ corn.tif
をワークスペースに読み取って表示します。
[X,map] = imread('corn.tif');
imshow(X,map)
関数 colormap
を使用してイメージのカラーマップを変更します。赤の成分のない元のカラーマップを使用します。
newmap = map; newmap(:,1) = 0; colormap(newmap)
イメージの表示範囲のスケーリング
トゥルーカラー (RGB) イメージをワークスペースに読み取ります。イメージのデータ型は uint8
です。
RGB = imread('peppers.png');
イメージの緑チャネルを抽出します。緑チャネルは 2 番目の色平面です。
G = RGB(:,:,2); imshow(G)
イメージの水平エッジを検出するフィルターを作成します。
filt = [-1 -1 -1;0 0 0;1 1 1];
関数 filter2
を使用して、イメージの緑チャネルをフィルター処理します。結果は最小値が -422、最大値が 656 のデータ型 double
のイメージです。フィルター処理されたイメージにおける大きいピクセルは強いエッジを示します。
edgeG = filter2(filt,G);
imshow
を使用して、フィルター処理されたイメージを既定の表示範囲で表示します。データ型 double
のイメージの場合、既定の表示範囲は [0, 1] です。フィルター処理されたピクセル値が範囲 [0, 1] を越えているため、イメージは黒と白で表示されます。
imshow(edgeG)
フィルター処理されたイメージを表示し、表示範囲をイメージ内のピクセル値にスケーリングします。イメージは全範囲のグレースケール値を使用して表示されます。
imshow(edgeG,[])
最近傍および双一次内挿を使用したイメージの拡大
corn.tif
ファイルからワークスペースにグレースケール イメージを読み取ります。イメージのグレースケール バージョンはファイル内の 2 番目のイメージです。
corn_gray = imread('corn.tif',2);
イメージのごく一部を選択します。imshow
を使用して、100% の倍率で詳細なイメージを表示します。
corn_detail = corn_gray(1:100,1:100); imshow(corn_detail)
名前と値のペアの引数 'InitialMagnification'
を使用して、1000% の倍率でイメージを表示します。既定では、inshow
はピクセル値の最近傍点による内挿を実行します。イメージにはブロック アーティファクトがあります。
imshow(corn_detail,'InitialMagnification',1000)
双一次内挿法を指定して、1000% の倍率でイメージを表示します。イメージがより滑らかに表示されます。
imshow(corn_detail,'InitialMagnification',1000,'Interpolation',"bilinear")
入力引数
I
— 入力のグレースケール イメージ
行列
入力のグレースケール イメージ。行列として指定します。グレースケール イメージは任意の数値データ型にできます。
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
RGB
— 入力のトゥルーカラー イメージ
m x n x 3 の配列
入力のトゥルーカラー イメージ。m x n x 3 の配列として指定します。
データ型 single
または double
のトゥルーカラー イメージを指定する場合、値は範囲 [0, 1] 内でなければなりません。ピクセル値がこの範囲外である場合は、関数 rescale
を使用してピクセル値を範囲 [0, 1] にスケーリングできます。引数 '
は、入力イメージがトゥルーカラーである場合は影響はありません。DisplayRange
'
データ型: single
| double
| uint8
| uint16
BW
— 入力のバイナリ イメージ
行列
入力のバイナリ イメージ。行列として指定します。
データ型: logical
X
— インデックス付きイメージ
正の整数の 2 次元行列
インデックス付きイメージ。正の整数の 2 次元行列として指定します。X
の値は map
で指定するカラーマップのインデックスです。
データ型: single
| double
| uint8
| logical
map
— カラーマップ
c 行 3 列の行列
インデックス付きイメージ X
に関連付けられたカラーマップ。c 行 3 列の行列として指定します。map
の各行は、カラーマップの各色を構成する赤、緑、青の成分を指定する RGB 3 成分です。map
のデータ型が single
または double
の場合、行列の値の範囲は [0, 1] です。
データ型: single
| double
| uint8
filename
— ファイル名
文字ベクトル
ファイル名。文字ベクトルとして指定します。イメージは関数 imread
によって読み取り可能でなければなりません。関数 imshow
はイメージを表示しますが、イメージ データを MATLAB® ワークスペース内に保存しません。ファイルに複数のイメージが含まれている場合、imshow
はファイルの最初のイメージを表示します。
例: 'peppers.png'
データ型: char
[low high]
— グレースケール イメージの表示範囲
2 要素ベクトル
グレースケール イメージの表示範囲。2 要素ベクトルとして指定します。詳細については、名前と値のペアの引数 '
を参照してください。DisplayRange
'
例: [50 250]
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
名前と値の引数
例: imshow('board.tif','Border','tight')
オプションの Name,Value
の引数ペアをコンマ区切りで指定します。Name
は引数名で、Value
は対応する値です。Name
は引用符で囲まなければなりません。Name1,Value1,...,NameN,ValueN
のように、複数の名前と値のペアの引数を任意の順序で指定できます。
Border
— Figure ウィンドウの境界スペース
'loose'
(既定値) | 'tight'
Figure ウィンドウの境界スペース。'Border'
と 'tight'
または 'loose'
で構成されるコンマ区切りのペアとして指定します。'loose'
に設定した場合、Figure ウィンドウ内のイメージの周囲にスペースが追加されます。'tight'
に設定した場合、Figure ウィンドウ内のイメージの周囲にスペースは追加されません。
イメージが非常に小さい場合または Figure のイメージおよびその座標軸の近くに他のオブジェクトがある場合、imshow
はこのパラメーターの設定内容にかかわらず、境界スペースを使用する場合があります。
データ型: char
Colormap
— カラーマップ
c 行 3 列の行列
座標軸のカラーマップ。'Colormap'
と値の範囲が [0, 1] の c 行 3 列の行列で構成されるコンマ区切りのペアとして指定します。行列の各行は、カラーマップの各色を構成する赤、緑、青の成分を指定する RGB 3 成分です。フォールス カラーでグレースケール イメージを表示するには、この引数を使用してください。空のカラーマップ ([]
) を指定すると、関数 imshow
はこの引数を無視します。
例: cmap = copper; imshow('board.tif','Colormap',cmap)
データ型: double
DisplayRange
— グレースケール イメージの表示範囲
2 要素ベクトル | []
グレースケール イメージの表示範囲。[low high]
の形式の 2 要素ベクトルとして指定します。関数 imshow
は、値 low
(および low
よりも小さいすべての値) を黒で、値 high
(および high
よりも大きいすべての値) を白で表示します。low
と high
の間の値は、既定数のグレー レベルを使用して、中間のグレー階調で表示されます。
空行列 ([]
) を指定すると、imshow
は [min(I(:)) max(I(:))]
の表示範囲を使用します。言い換えれば、I
の最小値が黒の場合、最大値は白になります。
表示範囲を指定しない場合、imshow
はイメージ データ型に基づいて既定の表示範囲を選択します。
I
が整数型の場合、
の既定値は、その整数クラスで表現可能な最小値または最大値です。たとえば、DisplayRange
uint16
配列の既定の表示範囲が [0, 65535] であるとします。I
がsingle
データ型またはdouble
データ型である場合、既定の表示範囲は [0, 1] になります。
メモ
ファイル名でイメージを指定する場合を除いて、パラメーター名の入力はオプションです。構文 imshow(I,[low high])
は、imshow(I,'DisplayRange',[low high])
と等価です。imshow
をファイル名とともに呼び出す場合は、'DisplayRange'
パラメーターを指定しなければなりません。
例: 'DisplayRange',[10 250]
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
InitialMagnification
— イメージ表示の初期倍率
100
(既定値) | 数値スカラー | 'fit'
イメージ表示の初期倍率。'InitialMagnification'
と数値スカラーまたは 'fit'
で構成されるコンマ区切りのペアとして指定します。100
に設定すると、imshow
は、100% の倍率 (イメージ ピクセルごとに 1 つのスクリーン ピクセル) でイメージを表示します。'fit'
に設定すると、imshow
はイメージ全体をウィンドウに合わせてスケーリングします。
最初に、imshow
はイメージ全体を指定された倍率で表示しようとします。倍率の値が、イメージをスクリーン上に表示するには大きすぎる場合、imshow
はスクリーンに収まる最も大きな倍率でイメージを表示します。
'WindowStyle'
プロパティが 'docked'
に設定されている Figure にイメージが表示される場合、imshow
は Figure に収まる最大の倍率でイメージを表示します。
メモ: 座標軸の位置を指定すると、imshow
は、指定されている初期の倍率を無視し、'fit'
の動作を既定の動作にします。
imshow
を 'Reduce'
パラメーターとともに使用する場合、初期倍率は 'fit'
でなければなりません。
MATLAB Online™ では、'InitialMagnification'
が 'fit'
に設定されており、変更はできません。
例: 'InitialMagnification',80
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| char
Interpolation
— 内挿法
'nearest'
(既定値) | 'bilinear'
内挿法。'nearest'
または 'bilinear'
として指定します。MATLAB は内挿を使用して、スケーリングを行ったイメージのバージョンを画面に表示します。選択した値はイメージ データに影響しません。イメージの内容と実施する効果に基づいて、内挿法を選択します。
'nearest'
— 最近傍内挿。(x, y) にあるピクセルの値は、元のイメージの (x, y) に最も近いピクセルの値です。この方法は、異なるカテゴリを表すピクセルの値が少ない場合、またはビュー内の各ピクセルを高い拡大率で表示する場合に最適です。'bilinear'
— 双一次内挿。(x, y) にあるピクセルの値は、元のイメージの周囲にあるピクセルの加重平均です。表示のアーティファクトを最小限にするために、関数imshow
はイメージの縮小時にアンチエイリアシングを実行します。この方法は、その他のほぼすべての状況に最適です。
Parent
— image オブジェクトの親の座標軸
Axes
オブジェクト | UIAxes
オブジェクト
image オブジェクトの親座標軸。'Parent'
と Axes
オブジェクトまたは UIAxes
オブジェクトで構成されるコンマ区切りのペアとして指定します。名前と値の引数 'Parent'
を使用して、Figure
および Axes
のプロパティの制御を可能にする UI を作成します。
Reduce
— サブサンプリングのインジケーター
true
| false
| 1
| 0
イメージのサブサンプリングのインジケーター。'Reduce'
と true
、false
、1
または 0
のいずれかで構成されるコンマ区切りのペアとして指定します。この引数は TIFF ファイルの名前とともに使用する場合にのみ有効です。非常に大きなイメージの概要を表示するために、引数 Reduce
を使用します。
データ型: logical
XData
— 既定以外の座標系の X 軸の範囲
2 要素ベクトル
既定以外の座標系の X 軸の範囲。'XData'
と 2 要素ベクトルで構成されるコンマ区切りのペアとして指定します。この引数は、イメージ XData
を指定することにより、既定ではない空間座標系を設定します。値には 3 つ以上の要素を指定できますが、imshow
は最初と最後の要素しか使用しません。
例: 'XData',[100 200]
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
YData
— 既定以外の座標系の Y 軸の範囲
2 要素ベクトル
既定以外の座標系の Y 軸の範囲。'YData'
と 2 要素ベクトルで構成されるコンマ区切りのペアとして指定します。値には 3 つ以上の要素を指定できますが、imshow
は最初と最後の要素しか使用しません。
例: 'YData',[100 200]
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
出力引数
himage
— imshow
によって作成されたイメージ
image オブジェクト
関数 imshow
によって作成されたイメージ。image オブジェクトとして指定します。
ヒント
イメージを作成した後にカラーマップを変更するには、
colormap
コマンドを使用します。関数
imshow
と関数tiledlayout
およびnexttile
を使用して、異なるカラーマップをもつ複数のイメージを同じ Figure に表示できます。imshow
を呼び出した後でhold on
コマンドを使用することで、imshow
によって作成された座標軸の上部に座標軸を作成できます。MATLAB を
-nojvm
オプションで開始した場合、関数imshow
はサポートされません。
拡張機能
GPU 配列
Parallel Computing Toolbox™ を使用してグラフィックス処理装置 (GPU) 上で実行することにより、コードを高速化します。
使用上の注意事項および制限事項:
この関数は GPU 配列を受け入れますが、GPU 上では実行されません。
詳細については、GPU での MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
分散配列
Parallel Computing Toolbox™ を使用して、クラスターの結合メモリ上で大きなアレイを分割します。
使用上の注意事項および制限事項:
この関数は分散配列に対して演算を行いますが、クライアントの MATLAB で実行されます。
詳細については、分散配列を使用した MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
バージョン履歴
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)