Accelerating the pace of engineering and science

# labelmatrix

Create label matrix from bwconncomp structure

## Syntax

L = labelmatrix(CC)

## Description

L = labelmatrix(CC) creates a label matrix from the connected components structure CC returned by bwconncomp. The size of L is CC.ImageSize. The elements of L are integer values greater than or equal to 0. The pixels labeled 0 are the background. The pixels labeled 1 make up one object; the pixels labeled 2 make up a second object; and so on. The class of L depends on CC.NumObjects, as shown in the following table.

ClassRange
'uint8'

CC.NumObjects $\le$ 255

'uint16'

256 $\le$ CC.NumObjects $\le$ 65535

'uint32'

65536 $\le$ CC.NumObjects $\le {2}^{32}-1$

'double'

CC.NumObjects $\ge {2}^{32}$

labelmatrix is more memory efficient than bwlabel and bwlabeln because it returns its label matrix in the smallest numeric class necessary for the number of objects.

## Class Support

CC is a structure returned by bwconncomp. The label matrix L is uint8, uint16, uint32, or double.

## Examples

Calculate the connected components and display results:

```BW = imread('text.png');
CC = bwconncomp(BW);
L = labelmatrix(CC);
L2 = bwlabel(BW);

whos L L2
```

The output for whos appears as follows:

```Name        Size              Bytes  Class     Attributes

L         256x256             65536  uint8
L2        256x256            524288  double  ```
`figure, imshow(label2rgb(L));`

The output for imshow appears as follows: