Expand a coordinate array to be wider
1 回表示 (過去 30 日間)
古いコメントを表示
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?
0 件のコメント
回答 (1 件)
Matt J
2020 年 11 月 13 日
編集済み: Matt J
2020 年 11 月 13 日
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)=[];
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!