How do I detect and find the discolored area as a percentage of selected area
1 次查看(过去 30 天)
显示 更早的评论
please could you help me to find the discolored area (dark gray) as a percentage. (Compared to the full area of the sample - inner circle)
0 个评论
采纳的回答
KALYAN ACHARJYA
2021-2-22
编辑:KALYAN ACHARJYA
2021-2-22
rgbImage=imread('image_file_name');
[r,c]=size(rgbImage);
grayImage=rgb2gray(rgbImage);
bwImage=~bwareafilt(~imbinarize(grayImage),1);
figure,imshow(bwImage); title('Region of Interest');
%% Pixels Area Calculation in Percentage
data1=bwImage(:);
pix_counts=sum(data1);
fprintf('The Approx Percentage area (Pixel Counts): %f',pix_counts/length(data1)*100);
disp('%');
Result:
The Approx Percentage area (Pixel Counts): 70.739068%
2 个评论
KALYAN ACHARJYA
2021-2-24
@Dinuka Ratnasinghe This is also possible with the addition of just one or 2 lines in my code. I have answered the question based on your original question "How do I detect and find the discolored area as a percentage of selected area"
Steps:
- The Larger Section is already extracted (Done)
- Get the inner circle with considering different threshold value, here you need to segment the inner circle only (Or you may consider the edges and consider largest blobs only)
- Once done calculate the percentage of pixels as you want.
Good Luck!
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Segmentation and Analysis 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!