Azzera filtri
Azzera filtri

How to count area under given surface ?

2 visualizzazioni (ultimi 30 giorni)
MMSAAH
MMSAAH il 30 Apr 2020
Commentato: Ameer Hamza il 4 Mag 2020
Hello,
I want to count areas limited by green lines.
So, for my image the result is three areas.
Can anyone help me please.

Risposta accettata

Ameer Hamza
Ameer Hamza il 30 Apr 2020
Modificato: Ameer Hamza il 30 Apr 2020
Try this. It gives the area of three regions in number of pixels
im = im2double(imread('area.jpeg'));
im(:,end-5:end,:) = 0; % remove the white line at right and bottom of image
im(end-5:end,:,:) = 0;
mask = (im(:,:,1)>0.75) & (im(:,:,2)>0.75) & (im(:,:,3)>0.75);
regions = bwconncomp(mask);
areas = cellfun(@(x) numel(x), regions.PixelIdxList);
required_areas = maxk(areas, 3);
  4 Commenti
MMSAAH
MMSAAH il 4 Mag 2020
I'm using R2016a.
I've changed maxk() by :
[val ind] = sort(areas,'descend');
required_areas=val(1:3);
Now, it works.
Is it possible to transform the number of pixels to cm ?
Ameer Hamza
Ameer Hamza il 4 Mag 2020
You will need to specify the pixel per cm to find out the area.

Accedi per commentare.

Più risposte (0)

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by