This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materials including this page, select Japan from the country navigator on the bottom of this page.


Create label matrix from bwconncomp structure


L = labelmatrix(CC)


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.


CC.NumObjects 255


256 CC.NumObjects 65535


65536 CC.NumObjects 2321


CC.NumObjects 232

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.


collapse all

Read binary image into the workspace.

BW = imread('text.png');

Calculate the connected components, using bwconncomp .

CC = bwconncomp(BW);

Create a label matrix, using labelmatrix .

L = labelmatrix(CC);

For comparison, create a second label matrix, using bwlabel .

L2 = bwlabel(BW);

View both label matrices in the workspace. Note that labelmatrix is more memory efficient than bwlabel , using the smallest numeric class necessary for the number of objects.

whos L L2
  Name        Size              Bytes  Class     Attributes

  L         256x256             65536  uint8               
  L2        256x256            524288  double              

Display the label matrix as an RGB image, using label2rgb .


Introduced in R2009a

Was this topic helpful?