このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
labelmatrix
連結要素内のオブジェクトからラベル行列を作成する
説明
ラベル行列は、バイナリ イメージ内のオブジェクトまたは連結要素に一意の整数値を割り当てます。ラベル行列を使用して、個々のオブジェクトまたは連結要素を可視化します。
例
連結要素の検出と表示
バイナリ イメージをワークスペースに読み取ります。イメージを表示します。
BW = imread('text.png');
imshow(BW)
bwconncomp
を使用して連結要素を計算します。
CC = bwconncomp(BW);
labelmatrix
を使用してラベル行列を作成します。各ラベルに一意の数値インデックスがあります。
L = labelmatrix(CC);
ラベル行列の最大値を求めます。この値は検出されたオブジェクト数を示しており、この場合は 88 です。
numObjects = max(L(:))
numObjects = uint8
88
ラベル行列をイメージとして表示します。最大のラベル値は uint8
データ型の最大値よりもはるかに小さいので、イメージの表示範囲を拡大して、ラベルを区別しやすくします。
imshow(L,[])
ラベル値が小さいと、ラベル付けされたオブジェクトを確認するのが困難になります。また、ラベル値が近いと、オブジェクトを識別するのが困難になります。異なる連結要素を識別しやすくするため、label2rgb
を使用してラベル行列を RGB イメージとして表示し、ラベルの色の順序をシャッフルします。
imshow(label2rgb(L,'jet','k','shuffle'));
入力引数
CC
— 連結要素
構造体
連結要素。4 つのフィールドを持つ構造体として指定します。関数 bwconncomp
または bwpropfilt
を使用することで、連結要素の構造体を取得できます。
フィールド | 説明 |
---|---|
Connectivity | 連結要素 (オブジェクト) の連結性 |
ImageSize | バイナリ イメージのサイズ |
NumObjects | バイナリ イメージ内の連結要素 (オブジェクト) 数 |
PixelIdxList | 1 行 NumObjects 列の cell 配列。ここで、cell 配列の k 番目の要素は k 番目のオブジェクトのピクセルの線形インデックスを含むベクトルです。 |
出力引数
L
— ラベル行列
非負の整数の行列
連続領域のラベル行列。非負整数の行列として返されます。0
とラベル付けされたピクセルは背景です。1
とラベル付けされたピクセルは 1 番目のオブジェクトを構成し、2
とラベル付けされたピクセルは 2 番目のオブジェクトを構成する、というように、次々にオブジェクトを構成します。
L
のサイズは CC.ImageSize
フィールドの値によって決まります。L
のクラスは連続領域の数によって異なります。表に示すように、labelmatrix
はオブジェクト数 CC.NumObjects
を表せる最小のデータ型を使用します。
データ型 | 範囲 |
---|---|
uint8 |
|
uint16 | 256 ≤ |
uint32 | 65536 ≤ |
double |
|
データ型: double
| uint8
| uint16
| uint32
バージョン履歴
R2009a で導入
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)