Azzera filtri
Azzera filtri

how to find regionprops max(area) ind?

6 visualizzazioni (ultimi 30 giorni)
tsai kai shung
tsai kai shung il 30 Ott 2017
Risposto: tsai kai shung il 30 Ott 2017
if true
clear all;
clc;
img = imread('40.jpg');
tic
I = rgb2hsv(img);
channel1Min = 0.956; channel1Max = 0.006;
channel2Min = 0.594; channel2Max = 0.886;
channel3Min = 0.529; channel3Max = 0.780;
sliderBW = (I(:,:,1) >= channel1Min ) | (I(:,:,1) <= channel1Max) &(I(:,:,2) >= channel2Min ) & (I(:,:,2) <= channel2Max) & (I(:,:,3) >= channel3Min ) & (I(:,:,3) <= channel3Max); BW = sliderBW; bw3 = areaimg(BW); bw3 = ratioimg(bw3); imshow(bw3); S = regionprops(bw3,'BoundingBox','Area'); BW_2 = imcrop(img,[S.BoundingBox(1,:)]); end
i have a problem that is If the noise in my image is not filtered clean then the regionprops show Two or more struct then It will show an error so how to use one ind to replace imcrop(img,[S.BoundingBox(1,:)]);
  1 Commento
tsai kai shung
tsai kai shung il 30 Ott 2017
if true
clear all;
clc;
img = imread('40.jpg');
tic
I = rgb2hsv(img);
channel1Min = 0.956; channel1Max = 0.006;
channel2Min = 0.594; channel2Max = 0.886;
channel3Min = 0.529; channel3Max = 0.780;
sliderBW = (I(:,:,1) >= channel1Min ) | (I(:,:,1) <= channel1Max) &(I(:,:,2) >= channel2Min ) & (I(:,:,2) <= channel2Max) & (I(:,:,3) >= channel3Min ) & (I(:,:,3) <= channel3Max);
BW = sliderBW;
bw3 = areaimg(BW);
bw3 = ratioimg(bw3); imshow(bw3);
S = regionprops(bw3,'BoundingBox','Area');
BW_2 = imcrop(img,[S.BoundingBox(1,:)]);
end

Accedi per commentare.

Risposte (1)

tsai kai shung
tsai kai shung il 30 Ott 2017
this is my crop image

Community Treasure Hunt

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

Start Hunting!