This is machine translation

Translated by Microsoft
Mouse over text to see original. Click the button below to return to the English verison of the page.


Area of objects in binary image


total = bwarea(BW)


total = bwarea(BW) estimates the area of the objects in binary image BW. total is a scalar whose value corresponds roughly to the total number of on pixels in the image, but might not be exactly the same because different patterns of pixels are weighted differently.

Class Support

BW can be numeric or logical. For numeric input, any nonzero pixels are considered to be on. The return value total is of class double.


collapse all

Read the image and display it.

BW = imread('circles.png');

Calculate the area of objects in the image.

ans =


More About

collapse all


bwarea estimates the area of all of the on pixels in an image by summing the areas of each pixel in the image. The area of an individual pixel is determined by looking at its 2-by-2 neighborhood. There are six different patterns, each representing a different area:

  • Patterns with zero on pixels (area = 0)

  • Patterns with one on pixel (area = 1/4)

  • Patterns with two adjacent on pixels (area = 1/2)

  • Patterns with two diagonal on pixels (area = 3/4)

  • Patterns with three on pixels (area = 7/8)

  • Patterns with all four on pixels (area = 1)

Keep in mind that each pixel is part of four different 2-by-2 neighborhoods. This means, for example, that a single on pixel surrounded by off pixels has a total area of 1.


[1] Pratt, William K., Digital Image Processing, New York, John Wiley & Sons, Inc., 1991, p. 634.

See Also


Introduced before R2006a

Was this topic helpful?