Main Content

bwarea

이진 영상의 객체 면적

설명

예제

total = bwarea(BW)는 이진 영상 BW에 있는 객체의 면적을 추정합니다. total은 그 값이 영상의 총 on 픽셀 수와 대략 비슷한 스칼라이지만, 픽셀의 패턴에 따라 가중치가 다르게 적용되므로 정확히 일치하지 않을 수도 있습니다.

예제

모두 축소

이진 영상을 읽어 들인 후 이를 표시합니다.

BW = imread('circles.png');
imshow(BW)

Figure contains an axes object. The axes object contains an object of type image.

영상에 있는 객체의 면적을 계산합니다.

bwarea(BW)
ans = 1.4187e+04

입력 인수

모두 축소

이진 영상으로, 2차원 숫자형 또는 논리형 행렬로 지정됩니다. 숫자형 입력값의 경우 0이 아닌 픽셀은 1(true)로 간주됩니다.

예: BW = imread('text.png'); L = bwlabel(BW);

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

출력 인수

모두 축소

이진 영상 BW에서 추정된 on 픽셀의 수로, 숫자형 스칼라로 반환됩니다.

데이터형: double

알고리즘

bwarea는 영상에서 각 픽셀 면적의 합을 구하여 영상에 있는 모든 on 픽셀의 면적을 추정합니다. 개별 픽셀의 면적은 그 픽셀의 2×2 이웃을 검사하여 결정됩니다. 6가지의 패턴이 있으며 각각 다른 크기의 면적을 나타냅니다.

  • on 픽셀이 없는 패턴(면적 = 0)

  • on 픽셀이 1개 있는 패턴(면적 = 1/4)

  • on 픽셀 2개가 인접하여 있는 패턴(면적 = 1/2)

  • on 픽셀 2개가 대각선으로 있는 패턴(면적 = 3/4)

  • on 픽셀이 3개 있는 패턴(면적 = 7/8)

  • 4개 전부 on 픽셀인 패턴(면적 = 1)

각 픽셀은 4개의 서로 다른 2×2 이웃에 속해 있습니다. 예를 들어, on 픽셀 1개가 off 픽셀들에 둘러싸여 있으면 총 면적은 1입니다.

참고 문헌

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

버전 내역

R2006a 이전에 개발됨

참고 항목

| |