How to find adjacent object of an labeled image?

2 views (last 30 days)
Consider the attached labeled image of 10 objects. Each object is denoted by a numeric value 1-10.
I want to count adjacent objects for each that it shares a border with. For example for object 2 it shares the border with 1 and 3. So input will be 2 and output will be 1 and 3.
For the case of 7. Input 7, Output 3,4,6,8,9,10

Accepted Answer

Image Analyst
Image Analyst on 6 Jun 2018
This can be done with graycomatrix(). Trust me. Please think about it and try it yourself first.
  1 Comment
Casio Uploader
Casio Uploader on 9 Jun 2018
Edited: Casio Uploader on 9 Jun 2018
Thanks, It worked... Just few lines of code for other help:
glcms=graycomatrix(Labled Image);
kkkk=glcms(:,SupNum); %if you want to find neibours of 1,then input SupNum=1
[rrrr,~]=find(kkkk>0); aa=find(rrrr==SupNum); rrrr(aa)=[];
%%rrrr is output matrix which contains the neighbours of 1(or your desired one)

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!