How to calculate the area of only white part in the image

조회 수: 9 (최근 30일)
kanika bhalla
kanika bhalla 2021년 4월 22일
댓글: kanika bhalla 2021년 4월 23일
I want to calculate the area of only white part as shown in the figure. I had used - bwarea(image). But I am not sure whether its calculating correct area or not. As I just need the white portion area.
Any help is much appreciated.
Thank you in advance!!
  댓글 수: 2
Jonas
Jonas 2021년 4월 22일
you could count the white pixels, divide it by overall number of pixels and multiply it with the real size of the image
kanika bhalla
kanika bhalla 2021년 4월 22일
Hi Jonas,
Thank you for your answer. But I need some automatic way to calculate the area of white portion. Any help related to this is much appreciated.
Thank you!!

댓글을 달려면 로그인하십시오.

채택된 답변

Image Analyst
Image Analyst 2021년 4월 23일
You simply use nnz on your binary image to get the area in pixels
whiteArea = nnz(mask)
or you could use bwarea() - it uses a somewhat different algorithm for determining area (it's not just counting pixels).
whiteArea = bwarea(mask)
  댓글 수: 1
kanika bhalla
kanika bhalla 2021년 4월 23일
Hi Image Analyst,
Thank you for introducing me to new function- nnz
As i have checked doc nnz. n = nnz(MASK). It returns the number of nonzero elements in matrix X. I have confusion then how it will calculate the area.
Now I have used bwarea() to calculate the area of white portion.
Thank you for your useful answers and help!!

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Stephan
Stephan 2021년 4월 22일
편집: Stephan 2021년 4월 22일
Same as in your question yesterday: regionprops will solve both problems in 1 line of code.
  댓글 수: 3
Stephan
Stephan 2021년 4월 22일
편집: Stephan 2021년 4월 22일
In your case 'basic' should be helpful - this gives the centroid and the area
kanika bhalla
kanika bhalla 2021년 4월 23일
Hi Stephan,
Thank you for your help.
I tried what you guided me as shown below.
M=imread('C:\Users\Ucl\Desktop\test\mask_14H14\groundtruth_for_metrics\129groundtruth.jpg');
cc = bwconncomp(M);
stats = regionprops(cc,'Area');
But this is not giving me teh one desired output. Could you please guide me further why the output looks like this. I should get one area of only white portion.
Thank you!!

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Denoising and Compression에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by