Expand a coordinate array to be wider

2 Ansichten (letzte 30 Tage)
Savannah D
Savannah D am 13 Nov. 2020
Bearbeitet: Matt J am 13 Nov. 2020
Using bwboundary and regionprops, I have created a coordinate array of segmented objects "A". I have 64 "A" objects that have been segmented and I have their boundary coordinates (PixelList from regionprops). I am trying to elimate other objects "B" that are within 10 pixels of any "A" object. "A" and "B" never overlap but their close proximity has a negative effect on my final data analysis. Is there a way to expand on the "A" coordinate array so that I can separate A and B better?

Antworten (1)

Matt J
Matt J am 13 Nov. 2020
Bearbeitet: Matt J am 13 Nov. 2020
I'm assuming A and B are the struct output from regionprops:
Z=false(size(BW));
Aunion=Z;
for i=1:numel(A)
Aunion(A(i).PixelIdxList)=1;
end
D=bwdist(Aunion)>=10;
discard=false(1,numel(B));
for i=1:numel(B)
Bi=Z;
Bi(B.PixelIdxList)=1;
discard(i)=any(Bi(:)&D(:)); %test for intersection
end
B(discard)=[];

Produkte


Version

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by